@woodylab/payload 0.0.23 → 0.0.24
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.
- package/dist/config/index.cjs.js +3 -2
- package/dist/config/index.cjs.js.map +1 -1
- package/dist/config/index.esm.js +3 -2
- package/dist/config/index.esm.js.map +1 -1
- package/dist/enum/index.cjs.js +13 -0
- package/dist/enum/index.cjs.js.map +1 -0
- package/dist/enum/index.d.ts +1 -0
- package/dist/enum/index.esm.js +11 -0
- package/dist/enum/index.esm.js.map +1 -0
- package/dist/enum/userRoles.d.ts +7 -0
- package/dist/{fieldRoles-Du7heS1j.js → fieldSectionTabs-CmJ7R1Tc.js} +2 -35
- package/dist/fieldSectionTabs-CmJ7R1Tc.js.map +1 -0
- package/dist/{fieldRoles-CaefV-B7.js → fieldSectionTabs-s69lAc-N.js} +3 -35
- package/dist/fieldSectionTabs-s69lAc-N.js.map +1 -0
- package/dist/fields/fieldArray.d.ts +1 -1
- package/dist/fields/fieldBlocks.d.ts +1 -1
- package/dist/fields/fieldCheckbox.d.ts +1 -1
- package/dist/fields/fieldCode.d.ts +1 -1
- package/dist/fields/fieldDate.d.ts +1 -1
- package/dist/fields/fieldEmail.d.ts +1 -1
- package/dist/fields/fieldJoin.d.ts +1 -1
- package/dist/fields/fieldNumber.d.ts +1 -1
- package/dist/fields/fieldPoint.d.ts +1 -1
- package/dist/fields/fieldRadioGroup.d.ts +1 -1
- package/dist/fields/fieldRelationship.d.ts +1 -1
- package/dist/fields/fieldRichText.d.ts +1 -1
- package/dist/fields/fieldSelect.d.ts +1 -1
- package/dist/fields/fieldText.d.ts +1 -1
- package/dist/fields/fieldTextArea.d.ts +1 -1
- package/dist/fields/fieldUpload.d.ts +1 -1
- package/dist/fields/index.cjs.js +24 -23
- package/dist/fields/index.cjs.js.map +1 -1
- package/dist/fields/index.d.ts +1 -1
- package/dist/fields/index.esm.js +3 -2
- package/dist/fields/index.esm.js.map +1 -1
- package/dist/fields/style/fieldColor.d.ts +2 -2
- package/dist/fields/utils/fieldRoles.d.ts +1 -7
- package/dist/{index-BAwCvuam.js → index-CzSUe6uQ.js} +96 -95
- package/dist/{index-3pvlc6rV.js.map → index-CzSUe6uQ.js.map} +1 -1
- package/dist/{index-3pvlc6rV.js → index-DRoXkWCo.js} +3 -2
- package/dist/{index-BAwCvuam.js.map → index-DRoXkWCo.js.map} +1 -1
- package/dist/{index-1AtZK_IA.js → index-GtvmxNMr.js} +54 -27
- package/dist/index-GtvmxNMr.js.map +1 -0
- package/dist/{index-CVfvkQ4R.js → index-RnBYvX_q.js} +32 -6
- package/dist/index-RnBYvX_q.js.map +1 -0
- package/dist/index.cjs.js +5 -4
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.esm.js +4 -3
- package/dist/index.esm.js.map +1 -1
- package/dist/{fields/types → types}/fieldOverride.d.ts +3 -6
- package/dist/types/index.cjs.js +3 -0
- package/dist/types/index.cjs.js.map +1 -0
- package/dist/types/index.d.ts +1 -0
- package/dist/types/index.esm.js +2 -0
- package/dist/types/index.esm.js.map +1 -0
- package/package.json +1 -1
- package/dist/fieldRoles-CaefV-B7.js.map +0 -1
- package/dist/fieldRoles-Du7heS1j.js.map +0 -1
- package/dist/index-1AtZK_IA.js.map +0 -1
- package/dist/index-CVfvkQ4R.js.map +0 -1
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var fieldSectionTabs = require('./fieldSectionTabs-CmJ7R1Tc.js');
|
|
4
4
|
var tailwind_index = require('./index-DgYntBlB.js');
|
|
5
|
+
var enum_index = require('./enum/index.cjs.js');
|
|
5
6
|
|
|
6
7
|
const fieldTextArea = (override) => ({
|
|
7
8
|
name: 'textarea',
|
|
@@ -76,18 +77,18 @@ const fieldRadioGroup = (override) => ({
|
|
|
76
77
|
options: [
|
|
77
78
|
{
|
|
78
79
|
label: 'true',
|
|
79
|
-
value: true
|
|
80
|
+
value: true,
|
|
80
81
|
},
|
|
81
82
|
{
|
|
82
83
|
label: 'true',
|
|
83
|
-
value: false
|
|
84
|
-
}
|
|
84
|
+
value: false,
|
|
85
|
+
},
|
|
85
86
|
],
|
|
86
87
|
...override,
|
|
87
88
|
});
|
|
88
89
|
|
|
89
90
|
const fieldFontSizes = () => {
|
|
90
|
-
return
|
|
91
|
+
return fieldSectionTabs.fieldSelect({
|
|
91
92
|
name: 'fs',
|
|
92
93
|
label: 'Dimensione del testo',
|
|
93
94
|
options: tailwind_index.TailwindTextSizes,
|
|
@@ -98,40 +99,65 @@ const fieldFontSizes = () => {
|
|
|
98
99
|
});
|
|
99
100
|
};
|
|
100
101
|
|
|
102
|
+
const fieldRoles = (override) => ({
|
|
103
|
+
name: override?.name || 'roles',
|
|
104
|
+
label: override?.label || 'Ruoli',
|
|
105
|
+
type: 'select',
|
|
106
|
+
required: override?.required ?? true,
|
|
107
|
+
hasMany: override?.hasMany ?? true,
|
|
108
|
+
options: [
|
|
109
|
+
...Object.values(enum_index.userRoles).map((role) => ({
|
|
110
|
+
label: role.charAt(0).toUpperCase() + role.slice(1).toLowerCase(),
|
|
111
|
+
value: role,
|
|
112
|
+
})),
|
|
113
|
+
...(override?.options || []),
|
|
114
|
+
],
|
|
115
|
+
access: {
|
|
116
|
+
create: () => true,
|
|
117
|
+
update: () => true,
|
|
118
|
+
read: () => true,
|
|
119
|
+
...override?.access,
|
|
120
|
+
},
|
|
121
|
+
admin: {
|
|
122
|
+
description: 'Seleziona uno o più ruoli utente.',
|
|
123
|
+
...override?.admin,
|
|
124
|
+
},
|
|
125
|
+
});
|
|
126
|
+
|
|
101
127
|
// Esportazioni dalle cartelle principali
|
|
102
128
|
|
|
103
129
|
var index = /*#__PURE__*/Object.freeze({
|
|
104
130
|
__proto__: null,
|
|
105
|
-
fieldAction:
|
|
106
|
-
fieldArray:
|
|
131
|
+
fieldAction: fieldSectionTabs.fieldAction,
|
|
132
|
+
fieldArray: fieldSectionTabs.fieldArray,
|
|
107
133
|
fieldBlocks: fieldBlocks,
|
|
108
|
-
fieldCheckbox:
|
|
134
|
+
fieldCheckbox: fieldSectionTabs.fieldCheckbox,
|
|
109
135
|
fieldCode: fieldCode,
|
|
110
|
-
fieldColor:
|
|
111
|
-
fieldConfigProps:
|
|
112
|
-
fieldContainerProps:
|
|
113
|
-
fieldContainerWidths:
|
|
114
|
-
fieldContentProps:
|
|
136
|
+
fieldColor: fieldSectionTabs.fieldThemeColor,
|
|
137
|
+
fieldConfigProps: fieldSectionTabs.fieldConfigProps,
|
|
138
|
+
fieldContainerProps: fieldSectionTabs.fieldContainerProps,
|
|
139
|
+
fieldContainerWidths: fieldSectionTabs.fieldContainerWidths,
|
|
140
|
+
fieldContentProps: fieldSectionTabs.fieldContentProps,
|
|
115
141
|
fieldDate: fieldDate,
|
|
116
142
|
fieldEmail: fieldEmail,
|
|
117
143
|
fieldFontSizes: fieldFontSizes,
|
|
118
|
-
fieldHeights:
|
|
144
|
+
fieldHeights: fieldSectionTabs.fieldHeights,
|
|
119
145
|
fieldJoin: fieldJoin,
|
|
120
|
-
fieldMargins:
|
|
121
|
-
fieldNumber:
|
|
122
|
-
fieldPaddings:
|
|
146
|
+
fieldMargins: fieldSectionTabs.fieldMargins,
|
|
147
|
+
fieldNumber: fieldSectionTabs.fieldNumber,
|
|
148
|
+
fieldPaddings: fieldSectionTabs.fieldPaddings,
|
|
123
149
|
fieldPoint: fieldPoint,
|
|
124
150
|
fieldRadioGroup: fieldRadioGroup,
|
|
125
|
-
fieldRelationship:
|
|
126
|
-
fieldRichText:
|
|
127
|
-
fieldRoles: fieldRoles
|
|
128
|
-
fieldSectionProps:
|
|
129
|
-
fieldSectionTabs:
|
|
130
|
-
fieldSelect:
|
|
131
|
-
fieldText:
|
|
151
|
+
fieldRelationship: fieldSectionTabs.fieldRelationship,
|
|
152
|
+
fieldRichText: fieldSectionTabs.fieldRichText,
|
|
153
|
+
fieldRoles: fieldRoles,
|
|
154
|
+
fieldSectionProps: fieldSectionTabs.fieldSectionProps,
|
|
155
|
+
fieldSectionTabs: fieldSectionTabs.fieldSectionTabs,
|
|
156
|
+
fieldSelect: fieldSectionTabs.fieldSelect,
|
|
157
|
+
fieldText: fieldSectionTabs.fieldText,
|
|
132
158
|
fieldTextArea: fieldTextArea,
|
|
133
|
-
fieldUpload:
|
|
134
|
-
fieldViewportHeights:
|
|
159
|
+
fieldUpload: fieldSectionTabs.fieldUpload,
|
|
160
|
+
fieldViewportHeights: fieldSectionTabs.fieldViewportHeights
|
|
135
161
|
});
|
|
136
162
|
|
|
137
163
|
exports.fieldBlocks = fieldBlocks;
|
|
@@ -142,6 +168,7 @@ exports.fieldFontSizes = fieldFontSizes;
|
|
|
142
168
|
exports.fieldJoin = fieldJoin;
|
|
143
169
|
exports.fieldPoint = fieldPoint;
|
|
144
170
|
exports.fieldRadioGroup = fieldRadioGroup;
|
|
171
|
+
exports.fieldRoles = fieldRoles;
|
|
145
172
|
exports.fieldTextArea = fieldTextArea;
|
|
146
173
|
exports.index = index;
|
|
147
|
-
//# sourceMappingURL=index-
|
|
174
|
+
//# sourceMappingURL=index-GtvmxNMr.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-GtvmxNMr.js","sources":["../src/fields/fieldTextArea.ts","../src/fields/fieldBlocks.ts","../src/fields/fieldCode.ts","../src/fields/fieldDate.ts","../src/fields/fieldEmail.ts","../src/fields/fieldJoin.ts","../src/fields/fieldPoint.ts","../src/fields/fieldRadioGroup.ts","../src/fields/style/fieldFontSizes.ts","../src/fields/utils/fieldRoles.ts","../src/fields/index.ts"],"sourcesContent":["import { Field } from 'payload'\nimport FieldOverride from '../types/fieldOverride'\n\nconst fieldTextArea = (override?: FieldOverride<'textarea'>) =>\n <Field>{\n name: 'textarea',\n label: 'Textarea',\n type: 'textarea',\n required: false,\n ...override,\n }\nexport default fieldTextArea\n","import FieldOverride from '../types/fieldOverride'\nimport { Field } from 'payload'\n\nconst fieldBlocks = (override?: FieldOverride<'blocks'>) =>\n <Field>{\n name: 'blocks',\n label: 'Blocks',\n type: 'blocks',\n blocks: [],\n required: false,\n ...override,\n }\nexport default fieldBlocks\n","import { Field } from 'payload'\nimport FieldOverride from '../types/fieldOverride'\n\nconst fieldCode = (override?: FieldOverride<'code'>) =>\n <Field>{\n name: 'code',\n label: 'Code',\n type: 'code',\n required: false,\n ...override,\n }\nexport default fieldCode\n","import FieldOverride from '../types/fieldOverride'\nimport { Field } from 'payload'\n\nconst fieldDate = (override?: FieldOverride<'date'>) =>\n <Field>{\n name: 'date',\n label: 'Date',\n type: 'date',\n required: false,\n admin: {\n description: 'Select a date',\n date: {\n pickerAppearance: 'dayOnly',\n displayFormat: 'yyyy-MM-dd',\n },\n },\n ...override,\n }\nexport default fieldDate\n","import FieldOverride from '../types/fieldOverride'\nimport { Field } from 'payload'\n\nconst fieldEmail = (override?: FieldOverride<'email'>) =>\n <Field>{\n name: 'email',\n label: 'Email',\n type: 'email',\n required: false,\n ...override,\n }\nexport default fieldEmail\n","import { CollectionSlug, Field } from 'payload'\nimport FieldOverride from '../types/fieldOverride'\n\nconst fieldJoin = (\n collection: CollectionSlug,\n on: CollectionSlug,\n override?: FieldOverride<'join'>,\n) =>\n <Field>{\n name: 'join',\n label: 'join',\n type: 'join',\n collection,\n on,\n ...override,\n }\nexport default fieldJoin\n","import FieldOverride from '../types/fieldOverride'\nimport { Field } from 'payload'\n\nconst fieldPoint = (override?: FieldOverride<'point'>) =>\n <Field>{\n name: 'point',\n label: 'Point',\n type: 'point',\n required: false,\n ...override,\n }\nexport default fieldPoint\n","import { Field } from 'payload'\nimport FieldOverride from '../types/fieldOverride'\n\nconst fieldRadioGroup = (override?: FieldOverride<'radio'>) =>\n <Field>{\n name: 'radio',\n label: 'Radio',\n type: 'boolean',\n required: false,\n options: [\n {\n label: 'true',\n value: true,\n },\n {\n label: 'true',\n value: false,\n },\n ],\n ...override,\n }\nexport default fieldRadioGroup\n","import { Field } from 'payload'\nimport { TailwindTextSizes } from '../../tailwind'\nimport fieldSelect from '../fieldSelect'\n\nconst fieldFontSizes = (): Field => {\n return fieldSelect({\n name: 'fs',\n label: 'Dimensione del testo',\n options: TailwindTextSizes,\n defaultValue: 'text-base',\n admin: {\n description: 'Seleziona una dimensione per il testo (es. Small, Base, Large, ecc.).',\n },\n })\n}\nexport default fieldFontSizes\n","import { Field } from 'payload'\nimport FieldOverride from '../../types/fieldOverride'\nimport UserRole from '../../enum/userRoles'\n\nconst fieldRoles = (override?: FieldOverride<'select'>): Field => ({\n name: override?.name || 'roles',\n label: override?.label || 'Ruoli',\n type: 'select',\n required: override?.required ?? true,\n hasMany: override?.hasMany ?? true,\n options: [\n ...Object.values(UserRole).map((role) => ({\n label: role.charAt(0).toUpperCase() + role.slice(1).toLowerCase(),\n value: role,\n })),\n ...(override?.options || []),\n ],\n access: {\n create: () => true,\n update: () => true,\n read: () => true,\n ...override?.access,\n },\n admin: {\n description: 'Seleziona uno o più ruoli utente.',\n ...override?.admin,\n },\n})\nexport default fieldRoles\n","// Esportazioni dalle cartelle principali\nexport { default as fieldText } from './fieldText'\nexport { default as fieldTextArea } from './fieldTextArea'\nexport { default as fieldUpload } from './fieldUpload'\nexport { default as fieldArray } from './fieldArray'\nexport { default as fieldBlocks } from './fieldBlocks'\nexport { default as fieldCheckbox } from './fieldCheckbox'\nexport { default as fieldCode } from './fieldCode'\nexport { default as fieldDate } from './fieldDate'\nexport { default as fieldEmail } from './fieldEmail'\nexport { default as fieldJoin } from './fieldJoin'\nexport { default as fieldNumber } from './fieldNumber'\nexport { default as fieldPoint } from './fieldPoint'\nexport { default as fieldRadioGroup } from './fieldRadioGroup'\nexport { default as fieldRelationship } from './fieldRelationship'\nexport { default as fieldRichText } from './fieldRichText'\nexport { default as fieldSelect } from './fieldSelect'\n\n// Esportazioni dalla cartella layout\nexport { default as fieldContainerProps } from './layout/fieldContainerProps'\n\n// Esportazioni dalla cartella section\nexport { default as fieldAction } from './section/fieldAction'\nexport { default as fieldConfigProps } from './section/fieldConfigProps'\nexport { default as fieldContentProps } from './section/fieldContentProps'\nexport { default as fieldSectionProps } from './section/fieldSectionProps'\nexport { default as fieldSectionTabs } from './section/fieldSectionTabs'\n\n// Esportazioni dalla cartella style\nexport { default as fieldColor } from './style/fieldColor'\nexport { default as fieldContainerWidths } from './style/fieldContainerWidths'\nexport { default as fieldFontSizes } from './style/fieldFontSizes'\nexport { default as fieldHeights } from './style/fieldHeights'\nexport { default as fieldMargins } from './style/fieldMargins'\nexport { default as fieldPaddings } from './style/fieldPaddings'\nexport { default as fieldViewportHeights } from './style/fieldViewportHeights'\n\n// Esportazioni dalla cartella types\nexport { default as fieldOverride } from '../types/fieldOverride'\n\n// Esportazioni dalla cartella utils\n//export { default as fieldMenuItems } from './utils/fieldMenuItems';\nexport { default as fieldRoles } from './utils/fieldRoles'\n"],"names":["fieldSelect","TailwindTextSizes","UserRole"],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import { f as fieldSelect, a as fieldAction, b as fieldArray, c as fieldCheckbox, d as fieldThemeColor, e as fieldConfigProps, g as fieldContainerProps, h as fieldContainerWidths, j as fieldContentProps, k as fieldHeights, l as fieldMargins, m as fieldNumber, n as fieldPaddings, o as fieldRelationship, p as fieldRichText, q as
|
|
1
|
+
import { f as fieldSelect, a as fieldAction, b as fieldArray, c as fieldCheckbox, d as fieldThemeColor, e as fieldConfigProps, g as fieldContainerProps, h as fieldContainerWidths, j as fieldContentProps, k as fieldHeights, l as fieldMargins, m as fieldNumber, n as fieldPaddings, o as fieldRelationship, p as fieldRichText, q as fieldSectionProps, r as fieldSectionTabs, s as fieldText, t as fieldUpload, u as fieldViewportHeights } from './fieldSectionTabs-s69lAc-N.js';
|
|
2
2
|
import { T as TailwindTextSizes } from './index-5EL7OntE.js';
|
|
3
|
+
import { userRoles as UserRole } from './enum/index.esm.js';
|
|
3
4
|
|
|
4
5
|
const fieldTextArea = (override) => ({
|
|
5
6
|
name: 'textarea',
|
|
@@ -74,12 +75,12 @@ const fieldRadioGroup = (override) => ({
|
|
|
74
75
|
options: [
|
|
75
76
|
{
|
|
76
77
|
label: 'true',
|
|
77
|
-
value: true
|
|
78
|
+
value: true,
|
|
78
79
|
},
|
|
79
80
|
{
|
|
80
81
|
label: 'true',
|
|
81
|
-
value: false
|
|
82
|
-
}
|
|
82
|
+
value: false,
|
|
83
|
+
},
|
|
83
84
|
],
|
|
84
85
|
...override,
|
|
85
86
|
});
|
|
@@ -96,6 +97,31 @@ const fieldFontSizes = () => {
|
|
|
96
97
|
});
|
|
97
98
|
};
|
|
98
99
|
|
|
100
|
+
const fieldRoles = (override) => ({
|
|
101
|
+
name: override?.name || 'roles',
|
|
102
|
+
label: override?.label || 'Ruoli',
|
|
103
|
+
type: 'select',
|
|
104
|
+
required: override?.required ?? true,
|
|
105
|
+
hasMany: override?.hasMany ?? true,
|
|
106
|
+
options: [
|
|
107
|
+
...Object.values(UserRole).map((role) => ({
|
|
108
|
+
label: role.charAt(0).toUpperCase() + role.slice(1).toLowerCase(),
|
|
109
|
+
value: role,
|
|
110
|
+
})),
|
|
111
|
+
...(override?.options || []),
|
|
112
|
+
],
|
|
113
|
+
access: {
|
|
114
|
+
create: () => true,
|
|
115
|
+
update: () => true,
|
|
116
|
+
read: () => true,
|
|
117
|
+
...override?.access,
|
|
118
|
+
},
|
|
119
|
+
admin: {
|
|
120
|
+
description: 'Seleziona uno o più ruoli utente.',
|
|
121
|
+
...override?.admin,
|
|
122
|
+
},
|
|
123
|
+
});
|
|
124
|
+
|
|
99
125
|
// Esportazioni dalle cartelle principali
|
|
100
126
|
|
|
101
127
|
var index = /*#__PURE__*/Object.freeze({
|
|
@@ -132,5 +158,5 @@ var index = /*#__PURE__*/Object.freeze({
|
|
|
132
158
|
fieldViewportHeights: fieldViewportHeights
|
|
133
159
|
});
|
|
134
160
|
|
|
135
|
-
export { fieldBlocks as a, fieldCode as b, fieldDate as c, fieldEmail as d, fieldJoin as e, fieldTextArea as f, fieldPoint as g, fieldRadioGroup as h, index as i, fieldFontSizes as j };
|
|
136
|
-
//# sourceMappingURL=index-
|
|
161
|
+
export { fieldBlocks as a, fieldCode as b, fieldDate as c, fieldEmail as d, fieldJoin as e, fieldTextArea as f, fieldPoint as g, fieldRadioGroup as h, index as i, fieldFontSizes as j, fieldRoles as k };
|
|
162
|
+
//# sourceMappingURL=index-RnBYvX_q.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-RnBYvX_q.js","sources":["../src/fields/fieldTextArea.ts","../src/fields/fieldBlocks.ts","../src/fields/fieldCode.ts","../src/fields/fieldDate.ts","../src/fields/fieldEmail.ts","../src/fields/fieldJoin.ts","../src/fields/fieldPoint.ts","../src/fields/fieldRadioGroup.ts","../src/fields/style/fieldFontSizes.ts","../src/fields/utils/fieldRoles.ts","../src/fields/index.ts"],"sourcesContent":["import { Field } from 'payload'\nimport FieldOverride from '../types/fieldOverride'\n\nconst fieldTextArea = (override?: FieldOverride<'textarea'>) =>\n <Field>{\n name: 'textarea',\n label: 'Textarea',\n type: 'textarea',\n required: false,\n ...override,\n }\nexport default fieldTextArea\n","import FieldOverride from '../types/fieldOverride'\nimport { Field } from 'payload'\n\nconst fieldBlocks = (override?: FieldOverride<'blocks'>) =>\n <Field>{\n name: 'blocks',\n label: 'Blocks',\n type: 'blocks',\n blocks: [],\n required: false,\n ...override,\n }\nexport default fieldBlocks\n","import { Field } from 'payload'\nimport FieldOverride from '../types/fieldOverride'\n\nconst fieldCode = (override?: FieldOverride<'code'>) =>\n <Field>{\n name: 'code',\n label: 'Code',\n type: 'code',\n required: false,\n ...override,\n }\nexport default fieldCode\n","import FieldOverride from '../types/fieldOverride'\nimport { Field } from 'payload'\n\nconst fieldDate = (override?: FieldOverride<'date'>) =>\n <Field>{\n name: 'date',\n label: 'Date',\n type: 'date',\n required: false,\n admin: {\n description: 'Select a date',\n date: {\n pickerAppearance: 'dayOnly',\n displayFormat: 'yyyy-MM-dd',\n },\n },\n ...override,\n }\nexport default fieldDate\n","import FieldOverride from '../types/fieldOverride'\nimport { Field } from 'payload'\n\nconst fieldEmail = (override?: FieldOverride<'email'>) =>\n <Field>{\n name: 'email',\n label: 'Email',\n type: 'email',\n required: false,\n ...override,\n }\nexport default fieldEmail\n","import { CollectionSlug, Field } from 'payload'\nimport FieldOverride from '../types/fieldOverride'\n\nconst fieldJoin = (\n collection: CollectionSlug,\n on: CollectionSlug,\n override?: FieldOverride<'join'>,\n) =>\n <Field>{\n name: 'join',\n label: 'join',\n type: 'join',\n collection,\n on,\n ...override,\n }\nexport default fieldJoin\n","import FieldOverride from '../types/fieldOverride'\nimport { Field } from 'payload'\n\nconst fieldPoint = (override?: FieldOverride<'point'>) =>\n <Field>{\n name: 'point',\n label: 'Point',\n type: 'point',\n required: false,\n ...override,\n }\nexport default fieldPoint\n","import { Field } from 'payload'\nimport FieldOverride from '../types/fieldOverride'\n\nconst fieldRadioGroup = (override?: FieldOverride<'radio'>) =>\n <Field>{\n name: 'radio',\n label: 'Radio',\n type: 'boolean',\n required: false,\n options: [\n {\n label: 'true',\n value: true,\n },\n {\n label: 'true',\n value: false,\n },\n ],\n ...override,\n }\nexport default fieldRadioGroup\n","import { Field } from 'payload'\nimport { TailwindTextSizes } from '../../tailwind'\nimport fieldSelect from '../fieldSelect'\n\nconst fieldFontSizes = (): Field => {\n return fieldSelect({\n name: 'fs',\n label: 'Dimensione del testo',\n options: TailwindTextSizes,\n defaultValue: 'text-base',\n admin: {\n description: 'Seleziona una dimensione per il testo (es. Small, Base, Large, ecc.).',\n },\n })\n}\nexport default fieldFontSizes\n","import { Field } from 'payload'\nimport FieldOverride from '../../types/fieldOverride'\nimport UserRole from '../../enum/userRoles'\n\nconst fieldRoles = (override?: FieldOverride<'select'>): Field => ({\n name: override?.name || 'roles',\n label: override?.label || 'Ruoli',\n type: 'select',\n required: override?.required ?? true,\n hasMany: override?.hasMany ?? true,\n options: [\n ...Object.values(UserRole).map((role) => ({\n label: role.charAt(0).toUpperCase() + role.slice(1).toLowerCase(),\n value: role,\n })),\n ...(override?.options || []),\n ],\n access: {\n create: () => true,\n update: () => true,\n read: () => true,\n ...override?.access,\n },\n admin: {\n description: 'Seleziona uno o più ruoli utente.',\n ...override?.admin,\n },\n})\nexport default fieldRoles\n","// Esportazioni dalle cartelle principali\nexport { default as fieldText } from './fieldText'\nexport { default as fieldTextArea } from './fieldTextArea'\nexport { default as fieldUpload } from './fieldUpload'\nexport { default as fieldArray } from './fieldArray'\nexport { default as fieldBlocks } from './fieldBlocks'\nexport { default as fieldCheckbox } from './fieldCheckbox'\nexport { default as fieldCode } from './fieldCode'\nexport { default as fieldDate } from './fieldDate'\nexport { default as fieldEmail } from './fieldEmail'\nexport { default as fieldJoin } from './fieldJoin'\nexport { default as fieldNumber } from './fieldNumber'\nexport { default as fieldPoint } from './fieldPoint'\nexport { default as fieldRadioGroup } from './fieldRadioGroup'\nexport { default as fieldRelationship } from './fieldRelationship'\nexport { default as fieldRichText } from './fieldRichText'\nexport { default as fieldSelect } from './fieldSelect'\n\n// Esportazioni dalla cartella layout\nexport { default as fieldContainerProps } from './layout/fieldContainerProps'\n\n// Esportazioni dalla cartella section\nexport { default as fieldAction } from './section/fieldAction'\nexport { default as fieldConfigProps } from './section/fieldConfigProps'\nexport { default as fieldContentProps } from './section/fieldContentProps'\nexport { default as fieldSectionProps } from './section/fieldSectionProps'\nexport { default as fieldSectionTabs } from './section/fieldSectionTabs'\n\n// Esportazioni dalla cartella style\nexport { default as fieldColor } from './style/fieldColor'\nexport { default as fieldContainerWidths } from './style/fieldContainerWidths'\nexport { default as fieldFontSizes } from './style/fieldFontSizes'\nexport { default as fieldHeights } from './style/fieldHeights'\nexport { default as fieldMargins } from './style/fieldMargins'\nexport { default as fieldPaddings } from './style/fieldPaddings'\nexport { default as fieldViewportHeights } from './style/fieldViewportHeights'\n\n// Esportazioni dalla cartella types\nexport { default as fieldOverride } from '../types/fieldOverride'\n\n// Esportazioni dalla cartella utils\n//export { default as fieldMenuItems } from './utils/fieldMenuItems';\nexport { default as fieldRoles } from './utils/fieldRoles'\n"],"names":[],"mappings":";;;;AAGA,MAAM,aAAa,GAAG,CAAC,QAAoC,MAClD;AACL,IAAA,IAAI,EAAE,UAAU;AAChB,IAAA,KAAK,EAAE,UAAU;AACjB,IAAA,IAAI,EAAE,UAAU;AAChB,IAAA,QAAQ,EAAE,KAAK;AACf,IAAA,GAAG,QAAQ;AACZ,CAAA;;ACPH,MAAM,WAAW,GAAG,CAAC,QAAkC,MAC9C;AACL,IAAA,IAAI,EAAE,QAAQ;AACd,IAAA,KAAK,EAAE,QAAQ;AACf,IAAA,IAAI,EAAE,QAAQ;AACd,IAAA,MAAM,EAAE,EAAE;AACV,IAAA,QAAQ,EAAE,KAAK;AACf,IAAA,GAAG,QAAQ;AACZ,CAAA;;ACRH,MAAM,SAAS,GAAG,CAAC,QAAgC,MAC1C;AACL,IAAA,IAAI,EAAE,MAAM;AACZ,IAAA,KAAK,EAAE,MAAM;AACb,IAAA,IAAI,EAAE,MAAM;AACZ,IAAA,QAAQ,EAAE,KAAK;AACf,IAAA,GAAG,QAAQ;AACZ,CAAA;;ACPH,MAAM,SAAS,GAAG,CAAC,QAAgC,MAC1C;AACL,IAAA,IAAI,EAAE,MAAM;AACZ,IAAA,KAAK,EAAE,MAAM;AACb,IAAA,IAAI,EAAE,MAAM;AACZ,IAAA,QAAQ,EAAE,KAAK;AACf,IAAA,KAAK,EAAE;AACL,QAAA,WAAW,EAAE,eAAe;AAC5B,QAAA,IAAI,EAAE;AACJ,YAAA,gBAAgB,EAAE,SAAS;AAC3B,YAAA,aAAa,EAAE,YAAY;AAC5B,SAAA;AACF,KAAA;AACD,IAAA,GAAG,QAAQ;AACZ,CAAA;;ACdH,MAAM,UAAU,GAAG,CAAC,QAAiC,MAC5C;AACL,IAAA,IAAI,EAAE,OAAO;AACb,IAAA,KAAK,EAAE,OAAO;AACd,IAAA,IAAI,EAAE,OAAO;AACb,IAAA,QAAQ,EAAE,KAAK;AACf,IAAA,GAAG,QAAQ;AACZ,CAAA;;ACPH,MAAM,SAAS,GAAG,CAChB,UAA0B,EAC1B,EAAkB,EAClB,QAAgC,MAEzB;AACL,IAAA,IAAI,EAAE,MAAM;AACZ,IAAA,KAAK,EAAE,MAAM;AACb,IAAA,IAAI,EAAE,MAAM;IACZ,UAAU;IACV,EAAE;AACF,IAAA,GAAG,QAAQ;AACZ,CAAA;;ACZH,MAAM,UAAU,GAAG,CAAC,QAAiC,MAC5C;AACL,IAAA,IAAI,EAAE,OAAO;AACb,IAAA,KAAK,EAAE,OAAO;AACd,IAAA,IAAI,EAAE,OAAO;AACb,IAAA,QAAQ,EAAE,KAAK;AACf,IAAA,GAAG,QAAQ;AACZ,CAAA;;ACPH,MAAM,eAAe,GAAG,CAAC,QAAiC,MACjD;AACL,IAAA,IAAI,EAAE,OAAO;AACb,IAAA,KAAK,EAAE,OAAO;AACd,IAAA,IAAI,EAAE,SAAS;AACf,IAAA,QAAQ,EAAE,KAAK;AACf,IAAA,OAAO,EAAE;AACP,QAAA;AACE,YAAA,KAAK,EAAE,MAAM;AACb,YAAA,KAAK,EAAE,IAAI;AACZ,SAAA;AACD,QAAA;AACE,YAAA,KAAK,EAAE,MAAM;AACb,YAAA,KAAK,EAAE,KAAK;AACb,SAAA;AACF,KAAA;AACD,IAAA,GAAG,QAAQ;AACZ,CAAA;;AChBH,MAAM,cAAc,GAAG,MAAY;AACjC,IAAA,OAAO,WAAW,CAAC;AACjB,QAAA,IAAI,EAAE,IAAI;AACV,QAAA,KAAK,EAAE,sBAAsB;AAC7B,QAAA,OAAO,EAAE,iBAAiB;AAC1B,QAAA,YAAY,EAAE,WAAW;AACzB,QAAA,KAAK,EAAE;AACL,YAAA,WAAW,EAAE,uEAAuE;AACrF,SAAA;AACF,KAAA,CAAC;AACJ;;ACVA,MAAM,UAAU,GAAG,CAAC,QAAkC,MAAa;AACjE,IAAA,IAAI,EAAE,QAAQ,EAAE,IAAI,IAAI,OAAO;AAC/B,IAAA,KAAK,EAAE,QAAQ,EAAE,KAAK,IAAI,OAAO;AACjC,IAAA,IAAI,EAAE,QAAQ;AACd,IAAA,QAAQ,EAAE,QAAQ,EAAE,QAAQ,IAAI,IAAI;AACpC,IAAA,OAAO,EAAE,QAAQ,EAAE,OAAO,IAAI,IAAI;AAClC,IAAA,OAAO,EAAE;AACP,QAAA,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,MAAM;AACxC,YAAA,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE;AACjE,YAAA,KAAK,EAAE,IAAI;AACZ,SAAA,CAAC,CAAC;AACH,QAAA,IAAI,QAAQ,EAAE,OAAO,IAAI,EAAE,CAAC;AAC7B,KAAA;AACD,IAAA,MAAM,EAAE;AACN,QAAA,MAAM,EAAE,MAAM,IAAI;AAClB,QAAA,MAAM,EAAE,MAAM,IAAI;AAClB,QAAA,IAAI,EAAE,MAAM,IAAI;QAChB,GAAG,QAAQ,EAAE,MAAM;AACpB,KAAA;AACD,IAAA,KAAK,EAAE;AACL,QAAA,WAAW,EAAE,mCAAmC;QAChD,GAAG,QAAQ,EAAE,KAAK;AACnB,KAAA;AACF,CAAA;;AC3BD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
package/dist/index.cjs.js
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var fields_index = require('./index-
|
|
4
|
-
var config_index = require('./index-
|
|
3
|
+
var fields_index = require('./index-GtvmxNMr.js');
|
|
4
|
+
var config_index = require('./index-CzSUe6uQ.js');
|
|
5
5
|
var tailwind_index = require('./index-DgYntBlB.js');
|
|
6
6
|
var acl_index = require('./index-BYL-buJk.js');
|
|
7
|
-
var
|
|
7
|
+
var fieldSectionTabs = require('./fieldSectionTabs-CmJ7R1Tc.js');
|
|
8
|
+
require('./enum/index.cjs.js');
|
|
8
9
|
|
|
9
10
|
const hexToRgb = (hex) => {
|
|
10
11
|
// Rimuove il simbolo `#` se presente
|
|
@@ -283,7 +284,7 @@ exports.generatePreviewPath = config_index.generatePreviewPath;
|
|
|
283
284
|
exports.googleFonts = config_index.GoogleFonts;
|
|
284
285
|
exports.Tailwind = tailwind_index.index;
|
|
285
286
|
exports.ACL = acl_index.index;
|
|
286
|
-
exports.iconsList =
|
|
287
|
+
exports.iconsList = fieldSectionTabs.iconsList;
|
|
287
288
|
exports.generateCssVars = generateCssVars;
|
|
288
289
|
exports.getButtonClasses = getButtonClasses;
|
|
289
290
|
exports.getClassName = getClassName;
|
package/dist/index.cjs.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs.js","sources":["../src/hexToRgb.ts","../src/generateCssVars.ts","../src/getButtonClasses.ts","../src/getClassName.ts","../src/getInlineStyles.ts"],"sourcesContent":["const hexToRgb = (hex: string): { r: number; g: number; b: number } => {\n // Rimuove il simbolo `#` se presente\n const cleanedHex = hex.replace(/^#/, '');\n\n // Controlla che il colore sia valido (3 o 6 caratteri)\n if (!/^([A-Fa-f0-9]{3}|[A-Fa-f0-9]{6})$/.test(cleanedHex)) {\n throw new Error(`Colore HEX non valido: ${hex}`);\n }\n\n // In caso di formato corto (es. \"FFF\"), lo converte in formato lungo (es. \"FFFFFF\")\n const expandedHex =\n cleanedHex.length === 3\n ? cleanedHex\n .split('')\n .map(char => char + char)\n .join('')\n : cleanedHex;\n\n // Converte il valore HEX in decimali per R, G e B\n const r = parseInt(expandedHex.slice(0, 2), 16);\n const g = parseInt(expandedHex.slice(2, 4), 16);\n const b = parseInt(expandedHex.slice(4, 6), 16);\n\n return { r, g, b };\n};\n\nexport default hexToRgb;","import hexToRgb from \"./hexToRgb\";\n\nfunction generateCssVars(settings: {\n headingFont?: string;\n textFont?: string;\n foregroundColor?: string;\n primaryColor?: string;\n secondaryColor?: string;\n accentColor?: string;\n darkColor?: string;\n lightColor?: string;\n}): string {\n // Gestione robusta dei font\n const fontWeights = [300, 400, 500, 600, 700, 800];\n\n const fontsToImport = [settings.headingFont, settings.textFont]\n .filter(Boolean)\n .map(f => {\n if (!f) return '';\n // Aggiungiamo il parametro wght per specificare i pesi da caricare\n return `@import url('https://fonts.googleapis.com/css2?family=${f.replace(\n / /g,\n \"+\"\n )}:wght@${fontWeights.join(';')}&display=swap');`\n })\n .join(\"\\n\");\n\n\n const generateOpacityVariants = (color: string | undefined, name: string): string => {\n if (!color) {\n return '';\n }\n\n try {\n const rgbValue = hexToRgb(color);\n\n if (!rgbValue || typeof rgbValue.r !== 'number' ||\n typeof rgbValue.g !== 'number' ||\n typeof rgbValue.b !== 'number') {\n console.warn(`Impossibile convertire il colore ${name}: ${color}`);\n return '';\n }\n\n const { r, g, b } = rgbValue;\n\n const opacityVars = Array.from({ length: 9 }, (_, i) => {\n const opacity = (i + 1) * 10;\n return `--color-${name}-${opacity}: rgba(${r}, ${g}, ${b}, ${opacity / 100});`;\n }).join(\"\\n\");\n\n return `\n --color-${name}: rgb(${r}, ${g}, ${b}); /* Default (opacità 1) */\n ${opacityVars}\n `;\n } catch (error) {\n console.warn(`Errore nella generazione delle varianti di opacità per ${name}: ${error}`);\n return '';\n }\n };\n\n // Genera variabili solo per i colori forniti\n const primaryVars = generateOpacityVariants(settings.primaryColor, \"primary\");\n const secondaryVars = generateOpacityVariants(settings.secondaryColor, \"secondary\");\n const accentVars = generateOpacityVariants(settings.accentColor, \"accent\");\n const darkVars = generateOpacityVariants(settings.darkColor, \"dark\");\n const lightVars = generateOpacityVariants(settings.lightColor, \"light\");\n\n // Genera i valori dei font in modo sicuro\n const headingFontValue = settings.headingFont\n ? `'${settings.headingFont}', sans-serif`\n : 'system-layout, sans-serif';\n\n const textFontValue = settings.textFont\n ? `'${settings.textFont}', sans-serif`\n : 'system-layout, sans-serif';\n\n return `\n ${fontsToImport}\n\n :root {\n --font-heading: ${headingFontValue};\n --font-text: ${textFontValue};\n --color-white: #ffffff;\n --color-black: #000000;\n --color-foreground: ${settings.foregroundColor || '#FFFFFF'};\n ${primaryVars}\n ${secondaryVars}\n ${accentVars}\n ${darkVars}\n ${lightVars}\n }\n `;\n}\n\nexport default generateCssVars;\n","export type ButtonConfig = {\n show: boolean\n buttonStyle?: 'solid' | 'outline' | 'ghost' | 'link'\n buttonColor?: 'primary' | 'secondary' | 'accent' | 'dark' | 'light'\n buttonSize?: 'small' | 'default' | 'medium' | 'large' | 'xl'\n buttonRounded?: 'none' | 'sm' | 'default' | 'lg' | 'full'\n useIcon?: boolean\n iconPosition?: 'left' | 'right' | 'only'\n iconName?: string\n iconVariant?: 'outline' | 'solid'\n alignment?: 'left' | 'center' | 'right'\n textColor?: 'primary' | 'secondary' | 'accent' | 'dark' | 'light' | 'white' | 'black'\n additionalEffects?: ('shadow' | 'transition' | 'scale')[]\n}\n\nexport type ActionConfig = ButtonConfig & {\n show?: boolean\n actionType?: 'internalLink' | 'externalLink' | 'customAction'\n internalLink?: {\n relationTo: string\n value: {\n slug: string\n id: string\n }\n }\n externalLink?: string\n customActionId?: string\n label?: string\n onClick?: () => void\n}\n\nfunction getButtonClasses(config: ActionConfig): string {\n const {\n buttonStyle = 'solid',\n buttonColor = 'primary',\n buttonSize = 'default',\n buttonRounded = 'default',\n iconPosition = 'left',\n textColor, // Aggiungiamo il colore del testo\n additionalEffects = [],\n } = config\n\n const classes: string[] = [\n 'inline-flex',\n 'items-center',\n 'justify-center',\n 'font-medium',\n 'focus:outline-none',\n 'focus-visible:ring-2',\n 'focus-visible:ring-offset-2',\n ]\n\n // Stile base\n switch (buttonStyle) {\n case 'solid':\n classes.push(`bg-${buttonColor}`)\n // Usa textColor se specificato, altrimenti usa il colore predefinito basato sul buttonColor\n if (textColor) {\n classes.push(`text-${textColor}`)\n } else {\n classes.push(buttonColor === 'light' ? 'text-dark' : 'text-white')\n }\n classes.push(`hover:bg-${buttonColor}/90`)\n break\n case 'outline':\n classes.push(`border`)\n classes.push(`border-${buttonColor}`)\n // Usa textColor se specificato, altrimenti usa il colore del bottone\n if (textColor) {\n classes.push(`text-${textColor}`)\n // Mantieni lo stesso colore di testo per l'hover, a meno che non sia specificato diversamente\n classes.push(`hover:text-${textColor}`)\n } else {\n classes.push(`text-${buttonColor}`)\n classes.push(`hover:text-${buttonColor === 'light' ? 'dark' : 'white'}`)\n }\n classes.push(`hover:bg-${buttonColor}`)\n break\n case 'ghost':\n // Usa textColor se specificato, altrimenti usa il colore del bottone\n if (textColor) {\n classes.push(`text-${textColor}`)\n } else {\n classes.push(`text-${buttonColor}`)\n }\n classes.push(`hover:bg-${buttonColor}/10`)\n break\n case 'link':\n // Usa textColor se specificato, altrimenti usa il colore del bottone\n if (textColor) {\n classes.push(`text-${textColor}`)\n } else {\n classes.push(`text-${buttonColor}`)\n }\n classes.push('hover:underline')\n break\n }\n\n // Dimensione\n switch (buttonSize) {\n case 'small':\n classes.push('text-xs px-2.5 py-1.5')\n break\n case 'default':\n classes.push('text-sm px-4 py-2')\n break\n case 'medium':\n classes.push('text-base px-5 py-2.5')\n break\n case 'large':\n classes.push('text-lg px-6 py-3')\n break\n case 'xl':\n classes.push('text-xl px-8 py-4')\n break\n }\n\n // Se è solo icona, aggiusta il padding per renderlo quadrato/rotondo\n if (config.useIcon && iconPosition === 'only') {\n classes.push('p-0')\n switch (buttonSize) {\n case 'small':\n classes.push('w-7 h-7')\n break\n case 'default':\n classes.push('w-9 h-9')\n break\n case 'medium':\n classes.push('w-10 h-10')\n break\n case 'large':\n classes.push('w-12 h-12')\n break\n case 'xl':\n classes.push('w-14 h-14')\n break\n }\n }\n\n // Arrotondamento\n switch (buttonRounded) {\n case 'none':\n classes.push('rounded-none')\n break\n case 'sm':\n classes.push('rounded-sm')\n break\n case 'default':\n classes.push('rounded')\n break\n case 'lg':\n classes.push('rounded-lg')\n break\n case 'full':\n classes.push('rounded-full')\n break\n }\n\n // Effetti aggiuntivi\n if (additionalEffects) {\n if (additionalEffects.includes('shadow')) {\n classes.push('shadow-md hover:shadow-lg')\n }\n if (additionalEffects.includes('transition')) {\n classes.push('transition-all duration-200')\n }\n if (additionalEffects.includes('scale')) {\n classes.push('transform hover:scale-105')\n }\n }\n\n // Aggiungi la classe focus-ring per il colore appropriato\n classes.push(`focus-visible:ring-${buttonColor}/50`)\n\n return classes.join(' ')\n}\n\nexport default getButtonClasses\n","function getClassName(config: any): string {\n // Mantieni tutte le altre classi Tailwind, ma ometti quelle di colore di sfondo\n const classList: string[] = [];\n\n // Gestione campi compositi\n ['p', 'm'].forEach((field) => {\n if (config[field]?.className) {\n classList.push(config[field].className);\n }\n });\n\n // Gestione campi diretti\n ['fs', 'h', 'container'].forEach((field) => {\n if (config[field]) {\n classList.push(config[field]);\n }\n });\n\n // Altre classi che non sono colori dinamici\n if (config.bgi && config.bgi.url) {\n classList.push('bg-no-repeat bg-cover');\n }\n if (config.boxShadow) {\n classList.push(config.boxShadow);\n }\n if (config.borderRadius) {\n classList.push(config.borderRadius);\n }\n\n return classList.join(' ');\n}\nexport default getClassName;\n","import React from 'react'\n\nfunction getInlineStyles(config: any): React.CSSProperties {\n const styles: React.CSSProperties = {}\n\n // Gestisci il background color con stile inline\n if (config.bgc) {\n styles.backgroundColor = config.bgc\n }\n\n // Gestione background image\n if (config.bgi && config.bgi.url) {\n styles.backgroundImage = `url(\"${config.bgi.url}\")`\n\n // Gestione focal point\n if (typeof config.bgi.focalX === 'number' && typeof config.bgi.focalY === 'number') {\n styles.backgroundPosition = `${config.bgi.focalX}% ${config.bgi.focalY}%`\n }\n }\n\n return styles\n}\n\nexport default getInlineStyles\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.cjs.js","sources":["../src/hexToRgb.ts","../src/generateCssVars.ts","../src/getButtonClasses.ts","../src/getClassName.ts","../src/getInlineStyles.ts"],"sourcesContent":["const hexToRgb = (hex: string): { r: number; g: number; b: number } => {\n // Rimuove il simbolo `#` se presente\n const cleanedHex = hex.replace(/^#/, '');\n\n // Controlla che il colore sia valido (3 o 6 caratteri)\n if (!/^([A-Fa-f0-9]{3}|[A-Fa-f0-9]{6})$/.test(cleanedHex)) {\n throw new Error(`Colore HEX non valido: ${hex}`);\n }\n\n // In caso di formato corto (es. \"FFF\"), lo converte in formato lungo (es. \"FFFFFF\")\n const expandedHex =\n cleanedHex.length === 3\n ? cleanedHex\n .split('')\n .map(char => char + char)\n .join('')\n : cleanedHex;\n\n // Converte il valore HEX in decimali per R, G e B\n const r = parseInt(expandedHex.slice(0, 2), 16);\n const g = parseInt(expandedHex.slice(2, 4), 16);\n const b = parseInt(expandedHex.slice(4, 6), 16);\n\n return { r, g, b };\n};\n\nexport default hexToRgb;","import hexToRgb from \"./hexToRgb\";\n\nfunction generateCssVars(settings: {\n headingFont?: string;\n textFont?: string;\n foregroundColor?: string;\n primaryColor?: string;\n secondaryColor?: string;\n accentColor?: string;\n darkColor?: string;\n lightColor?: string;\n}): string {\n // Gestione robusta dei font\n const fontWeights = [300, 400, 500, 600, 700, 800];\n\n const fontsToImport = [settings.headingFont, settings.textFont]\n .filter(Boolean)\n .map(f => {\n if (!f) return '';\n // Aggiungiamo il parametro wght per specificare i pesi da caricare\n return `@import url('https://fonts.googleapis.com/css2?family=${f.replace(\n / /g,\n \"+\"\n )}:wght@${fontWeights.join(';')}&display=swap');`\n })\n .join(\"\\n\");\n\n\n const generateOpacityVariants = (color: string | undefined, name: string): string => {\n if (!color) {\n return '';\n }\n\n try {\n const rgbValue = hexToRgb(color);\n\n if (!rgbValue || typeof rgbValue.r !== 'number' ||\n typeof rgbValue.g !== 'number' ||\n typeof rgbValue.b !== 'number') {\n console.warn(`Impossibile convertire il colore ${name}: ${color}`);\n return '';\n }\n\n const { r, g, b } = rgbValue;\n\n const opacityVars = Array.from({ length: 9 }, (_, i) => {\n const opacity = (i + 1) * 10;\n return `--color-${name}-${opacity}: rgba(${r}, ${g}, ${b}, ${opacity / 100});`;\n }).join(\"\\n\");\n\n return `\n --color-${name}: rgb(${r}, ${g}, ${b}); /* Default (opacità 1) */\n ${opacityVars}\n `;\n } catch (error) {\n console.warn(`Errore nella generazione delle varianti di opacità per ${name}: ${error}`);\n return '';\n }\n };\n\n // Genera variabili solo per i colori forniti\n const primaryVars = generateOpacityVariants(settings.primaryColor, \"primary\");\n const secondaryVars = generateOpacityVariants(settings.secondaryColor, \"secondary\");\n const accentVars = generateOpacityVariants(settings.accentColor, \"accent\");\n const darkVars = generateOpacityVariants(settings.darkColor, \"dark\");\n const lightVars = generateOpacityVariants(settings.lightColor, \"light\");\n\n // Genera i valori dei font in modo sicuro\n const headingFontValue = settings.headingFont\n ? `'${settings.headingFont}', sans-serif`\n : 'system-layout, sans-serif';\n\n const textFontValue = settings.textFont\n ? `'${settings.textFont}', sans-serif`\n : 'system-layout, sans-serif';\n\n return `\n ${fontsToImport}\n\n :root {\n --font-heading: ${headingFontValue};\n --font-text: ${textFontValue};\n --color-white: #ffffff;\n --color-black: #000000;\n --color-foreground: ${settings.foregroundColor || '#FFFFFF'};\n ${primaryVars}\n ${secondaryVars}\n ${accentVars}\n ${darkVars}\n ${lightVars}\n }\n `;\n}\n\nexport default generateCssVars;\n","export type ButtonConfig = {\n show: boolean\n buttonStyle?: 'solid' | 'outline' | 'ghost' | 'link'\n buttonColor?: 'primary' | 'secondary' | 'accent' | 'dark' | 'light'\n buttonSize?: 'small' | 'default' | 'medium' | 'large' | 'xl'\n buttonRounded?: 'none' | 'sm' | 'default' | 'lg' | 'full'\n useIcon?: boolean\n iconPosition?: 'left' | 'right' | 'only'\n iconName?: string\n iconVariant?: 'outline' | 'solid'\n alignment?: 'left' | 'center' | 'right'\n textColor?: 'primary' | 'secondary' | 'accent' | 'dark' | 'light' | 'white' | 'black'\n additionalEffects?: ('shadow' | 'transition' | 'scale')[]\n}\n\nexport type ActionConfig = ButtonConfig & {\n show?: boolean\n actionType?: 'internalLink' | 'externalLink' | 'customAction'\n internalLink?: {\n relationTo: string\n value: {\n slug: string\n id: string\n }\n }\n externalLink?: string\n customActionId?: string\n label?: string\n onClick?: () => void\n}\n\nfunction getButtonClasses(config: ActionConfig): string {\n const {\n buttonStyle = 'solid',\n buttonColor = 'primary',\n buttonSize = 'default',\n buttonRounded = 'default',\n iconPosition = 'left',\n textColor, // Aggiungiamo il colore del testo\n additionalEffects = [],\n } = config\n\n const classes: string[] = [\n 'inline-flex',\n 'items-center',\n 'justify-center',\n 'font-medium',\n 'focus:outline-none',\n 'focus-visible:ring-2',\n 'focus-visible:ring-offset-2',\n ]\n\n // Stile base\n switch (buttonStyle) {\n case 'solid':\n classes.push(`bg-${buttonColor}`)\n // Usa textColor se specificato, altrimenti usa il colore predefinito basato sul buttonColor\n if (textColor) {\n classes.push(`text-${textColor}`)\n } else {\n classes.push(buttonColor === 'light' ? 'text-dark' : 'text-white')\n }\n classes.push(`hover:bg-${buttonColor}/90`)\n break\n case 'outline':\n classes.push(`border`)\n classes.push(`border-${buttonColor}`)\n // Usa textColor se specificato, altrimenti usa il colore del bottone\n if (textColor) {\n classes.push(`text-${textColor}`)\n // Mantieni lo stesso colore di testo per l'hover, a meno che non sia specificato diversamente\n classes.push(`hover:text-${textColor}`)\n } else {\n classes.push(`text-${buttonColor}`)\n classes.push(`hover:text-${buttonColor === 'light' ? 'dark' : 'white'}`)\n }\n classes.push(`hover:bg-${buttonColor}`)\n break\n case 'ghost':\n // Usa textColor se specificato, altrimenti usa il colore del bottone\n if (textColor) {\n classes.push(`text-${textColor}`)\n } else {\n classes.push(`text-${buttonColor}`)\n }\n classes.push(`hover:bg-${buttonColor}/10`)\n break\n case 'link':\n // Usa textColor se specificato, altrimenti usa il colore del bottone\n if (textColor) {\n classes.push(`text-${textColor}`)\n } else {\n classes.push(`text-${buttonColor}`)\n }\n classes.push('hover:underline')\n break\n }\n\n // Dimensione\n switch (buttonSize) {\n case 'small':\n classes.push('text-xs px-2.5 py-1.5')\n break\n case 'default':\n classes.push('text-sm px-4 py-2')\n break\n case 'medium':\n classes.push('text-base px-5 py-2.5')\n break\n case 'large':\n classes.push('text-lg px-6 py-3')\n break\n case 'xl':\n classes.push('text-xl px-8 py-4')\n break\n }\n\n // Se è solo icona, aggiusta il padding per renderlo quadrato/rotondo\n if (config.useIcon && iconPosition === 'only') {\n classes.push('p-0')\n switch (buttonSize) {\n case 'small':\n classes.push('w-7 h-7')\n break\n case 'default':\n classes.push('w-9 h-9')\n break\n case 'medium':\n classes.push('w-10 h-10')\n break\n case 'large':\n classes.push('w-12 h-12')\n break\n case 'xl':\n classes.push('w-14 h-14')\n break\n }\n }\n\n // Arrotondamento\n switch (buttonRounded) {\n case 'none':\n classes.push('rounded-none')\n break\n case 'sm':\n classes.push('rounded-sm')\n break\n case 'default':\n classes.push('rounded')\n break\n case 'lg':\n classes.push('rounded-lg')\n break\n case 'full':\n classes.push('rounded-full')\n break\n }\n\n // Effetti aggiuntivi\n if (additionalEffects) {\n if (additionalEffects.includes('shadow')) {\n classes.push('shadow-md hover:shadow-lg')\n }\n if (additionalEffects.includes('transition')) {\n classes.push('transition-all duration-200')\n }\n if (additionalEffects.includes('scale')) {\n classes.push('transform hover:scale-105')\n }\n }\n\n // Aggiungi la classe focus-ring per il colore appropriato\n classes.push(`focus-visible:ring-${buttonColor}/50`)\n\n return classes.join(' ')\n}\n\nexport default getButtonClasses\n","function getClassName(config: any): string {\n // Mantieni tutte le altre classi Tailwind, ma ometti quelle di colore di sfondo\n const classList: string[] = [];\n\n // Gestione campi compositi\n ['p', 'm'].forEach((field) => {\n if (config[field]?.className) {\n classList.push(config[field].className);\n }\n });\n\n // Gestione campi diretti\n ['fs', 'h', 'container'].forEach((field) => {\n if (config[field]) {\n classList.push(config[field]);\n }\n });\n\n // Altre classi che non sono colori dinamici\n if (config.bgi && config.bgi.url) {\n classList.push('bg-no-repeat bg-cover');\n }\n if (config.boxShadow) {\n classList.push(config.boxShadow);\n }\n if (config.borderRadius) {\n classList.push(config.borderRadius);\n }\n\n return classList.join(' ');\n}\nexport default getClassName;\n","import React from 'react'\n\nfunction getInlineStyles(config: any): React.CSSProperties {\n const styles: React.CSSProperties = {}\n\n // Gestisci il background color con stile inline\n if (config.bgc) {\n styles.backgroundColor = config.bgc\n }\n\n // Gestione background image\n if (config.bgi && config.bgi.url) {\n styles.backgroundImage = `url(\"${config.bgi.url}\")`\n\n // Gestione focal point\n if (typeof config.bgi.focalX === 'number' && typeof config.bgi.focalY === 'number') {\n styles.backgroundPosition = `${config.bgi.focalX}% ${config.bgi.focalY}%`\n }\n }\n\n return styles\n}\n\nexport default getInlineStyles\n"],"names":[],"mappings":"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"}
|
package/dist/index.esm.js
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
export { i as Fields } from './index-
|
|
2
|
-
export { i as Config, g as generatePreviewPath, G as googleFonts } from './index-
|
|
1
|
+
export { i as Fields } from './index-RnBYvX_q.js';
|
|
2
|
+
export { i as Config, g as generatePreviewPath, G as googleFonts } from './index-DRoXkWCo.js';
|
|
3
3
|
export { i as Tailwind } from './index-5EL7OntE.js';
|
|
4
4
|
export { i as ACL } from './index-CKYq103o.js';
|
|
5
|
-
export { i as iconsList } from './
|
|
5
|
+
export { i as iconsList } from './fieldSectionTabs-s69lAc-N.js';
|
|
6
|
+
import './enum/index.esm.js';
|
|
6
7
|
|
|
7
8
|
const hexToRgb = (hex) => {
|
|
8
9
|
// Rimuove il simbolo `#` se presente
|
package/dist/index.esm.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.esm.js","sources":["../src/hexToRgb.ts","../src/generateCssVars.ts","../src/getButtonClasses.ts","../src/getClassName.ts","../src/getInlineStyles.ts"],"sourcesContent":["const hexToRgb = (hex: string): { r: number; g: number; b: number } => {\n // Rimuove il simbolo `#` se presente\n const cleanedHex = hex.replace(/^#/, '');\n\n // Controlla che il colore sia valido (3 o 6 caratteri)\n if (!/^([A-Fa-f0-9]{3}|[A-Fa-f0-9]{6})$/.test(cleanedHex)) {\n throw new Error(`Colore HEX non valido: ${hex}`);\n }\n\n // In caso di formato corto (es. \"FFF\"), lo converte in formato lungo (es. \"FFFFFF\")\n const expandedHex =\n cleanedHex.length === 3\n ? cleanedHex\n .split('')\n .map(char => char + char)\n .join('')\n : cleanedHex;\n\n // Converte il valore HEX in decimali per R, G e B\n const r = parseInt(expandedHex.slice(0, 2), 16);\n const g = parseInt(expandedHex.slice(2, 4), 16);\n const b = parseInt(expandedHex.slice(4, 6), 16);\n\n return { r, g, b };\n};\n\nexport default hexToRgb;","import hexToRgb from \"./hexToRgb\";\n\nfunction generateCssVars(settings: {\n headingFont?: string;\n textFont?: string;\n foregroundColor?: string;\n primaryColor?: string;\n secondaryColor?: string;\n accentColor?: string;\n darkColor?: string;\n lightColor?: string;\n}): string {\n // Gestione robusta dei font\n const fontWeights = [300, 400, 500, 600, 700, 800];\n\n const fontsToImport = [settings.headingFont, settings.textFont]\n .filter(Boolean)\n .map(f => {\n if (!f) return '';\n // Aggiungiamo il parametro wght per specificare i pesi da caricare\n return `@import url('https://fonts.googleapis.com/css2?family=${f.replace(\n / /g,\n \"+\"\n )}:wght@${fontWeights.join(';')}&display=swap');`\n })\n .join(\"\\n\");\n\n\n const generateOpacityVariants = (color: string | undefined, name: string): string => {\n if (!color) {\n return '';\n }\n\n try {\n const rgbValue = hexToRgb(color);\n\n if (!rgbValue || typeof rgbValue.r !== 'number' ||\n typeof rgbValue.g !== 'number' ||\n typeof rgbValue.b !== 'number') {\n console.warn(`Impossibile convertire il colore ${name}: ${color}`);\n return '';\n }\n\n const { r, g, b } = rgbValue;\n\n const opacityVars = Array.from({ length: 9 }, (_, i) => {\n const opacity = (i + 1) * 10;\n return `--color-${name}-${opacity}: rgba(${r}, ${g}, ${b}, ${opacity / 100});`;\n }).join(\"\\n\");\n\n return `\n --color-${name}: rgb(${r}, ${g}, ${b}); /* Default (opacità 1) */\n ${opacityVars}\n `;\n } catch (error) {\n console.warn(`Errore nella generazione delle varianti di opacità per ${name}: ${error}`);\n return '';\n }\n };\n\n // Genera variabili solo per i colori forniti\n const primaryVars = generateOpacityVariants(settings.primaryColor, \"primary\");\n const secondaryVars = generateOpacityVariants(settings.secondaryColor, \"secondary\");\n const accentVars = generateOpacityVariants(settings.accentColor, \"accent\");\n const darkVars = generateOpacityVariants(settings.darkColor, \"dark\");\n const lightVars = generateOpacityVariants(settings.lightColor, \"light\");\n\n // Genera i valori dei font in modo sicuro\n const headingFontValue = settings.headingFont\n ? `'${settings.headingFont}', sans-serif`\n : 'system-layout, sans-serif';\n\n const textFontValue = settings.textFont\n ? `'${settings.textFont}', sans-serif`\n : 'system-layout, sans-serif';\n\n return `\n ${fontsToImport}\n\n :root {\n --font-heading: ${headingFontValue};\n --font-text: ${textFontValue};\n --color-white: #ffffff;\n --color-black: #000000;\n --color-foreground: ${settings.foregroundColor || '#FFFFFF'};\n ${primaryVars}\n ${secondaryVars}\n ${accentVars}\n ${darkVars}\n ${lightVars}\n }\n `;\n}\n\nexport default generateCssVars;\n","export type ButtonConfig = {\n show: boolean\n buttonStyle?: 'solid' | 'outline' | 'ghost' | 'link'\n buttonColor?: 'primary' | 'secondary' | 'accent' | 'dark' | 'light'\n buttonSize?: 'small' | 'default' | 'medium' | 'large' | 'xl'\n buttonRounded?: 'none' | 'sm' | 'default' | 'lg' | 'full'\n useIcon?: boolean\n iconPosition?: 'left' | 'right' | 'only'\n iconName?: string\n iconVariant?: 'outline' | 'solid'\n alignment?: 'left' | 'center' | 'right'\n textColor?: 'primary' | 'secondary' | 'accent' | 'dark' | 'light' | 'white' | 'black'\n additionalEffects?: ('shadow' | 'transition' | 'scale')[]\n}\n\nexport type ActionConfig = ButtonConfig & {\n show?: boolean\n actionType?: 'internalLink' | 'externalLink' | 'customAction'\n internalLink?: {\n relationTo: string\n value: {\n slug: string\n id: string\n }\n }\n externalLink?: string\n customActionId?: string\n label?: string\n onClick?: () => void\n}\n\nfunction getButtonClasses(config: ActionConfig): string {\n const {\n buttonStyle = 'solid',\n buttonColor = 'primary',\n buttonSize = 'default',\n buttonRounded = 'default',\n iconPosition = 'left',\n textColor, // Aggiungiamo il colore del testo\n additionalEffects = [],\n } = config\n\n const classes: string[] = [\n 'inline-flex',\n 'items-center',\n 'justify-center',\n 'font-medium',\n 'focus:outline-none',\n 'focus-visible:ring-2',\n 'focus-visible:ring-offset-2',\n ]\n\n // Stile base\n switch (buttonStyle) {\n case 'solid':\n classes.push(`bg-${buttonColor}`)\n // Usa textColor se specificato, altrimenti usa il colore predefinito basato sul buttonColor\n if (textColor) {\n classes.push(`text-${textColor}`)\n } else {\n classes.push(buttonColor === 'light' ? 'text-dark' : 'text-white')\n }\n classes.push(`hover:bg-${buttonColor}/90`)\n break\n case 'outline':\n classes.push(`border`)\n classes.push(`border-${buttonColor}`)\n // Usa textColor se specificato, altrimenti usa il colore del bottone\n if (textColor) {\n classes.push(`text-${textColor}`)\n // Mantieni lo stesso colore di testo per l'hover, a meno che non sia specificato diversamente\n classes.push(`hover:text-${textColor}`)\n } else {\n classes.push(`text-${buttonColor}`)\n classes.push(`hover:text-${buttonColor === 'light' ? 'dark' : 'white'}`)\n }\n classes.push(`hover:bg-${buttonColor}`)\n break\n case 'ghost':\n // Usa textColor se specificato, altrimenti usa il colore del bottone\n if (textColor) {\n classes.push(`text-${textColor}`)\n } else {\n classes.push(`text-${buttonColor}`)\n }\n classes.push(`hover:bg-${buttonColor}/10`)\n break\n case 'link':\n // Usa textColor se specificato, altrimenti usa il colore del bottone\n if (textColor) {\n classes.push(`text-${textColor}`)\n } else {\n classes.push(`text-${buttonColor}`)\n }\n classes.push('hover:underline')\n break\n }\n\n // Dimensione\n switch (buttonSize) {\n case 'small':\n classes.push('text-xs px-2.5 py-1.5')\n break\n case 'default':\n classes.push('text-sm px-4 py-2')\n break\n case 'medium':\n classes.push('text-base px-5 py-2.5')\n break\n case 'large':\n classes.push('text-lg px-6 py-3')\n break\n case 'xl':\n classes.push('text-xl px-8 py-4')\n break\n }\n\n // Se è solo icona, aggiusta il padding per renderlo quadrato/rotondo\n if (config.useIcon && iconPosition === 'only') {\n classes.push('p-0')\n switch (buttonSize) {\n case 'small':\n classes.push('w-7 h-7')\n break\n case 'default':\n classes.push('w-9 h-9')\n break\n case 'medium':\n classes.push('w-10 h-10')\n break\n case 'large':\n classes.push('w-12 h-12')\n break\n case 'xl':\n classes.push('w-14 h-14')\n break\n }\n }\n\n // Arrotondamento\n switch (buttonRounded) {\n case 'none':\n classes.push('rounded-none')\n break\n case 'sm':\n classes.push('rounded-sm')\n break\n case 'default':\n classes.push('rounded')\n break\n case 'lg':\n classes.push('rounded-lg')\n break\n case 'full':\n classes.push('rounded-full')\n break\n }\n\n // Effetti aggiuntivi\n if (additionalEffects) {\n if (additionalEffects.includes('shadow')) {\n classes.push('shadow-md hover:shadow-lg')\n }\n if (additionalEffects.includes('transition')) {\n classes.push('transition-all duration-200')\n }\n if (additionalEffects.includes('scale')) {\n classes.push('transform hover:scale-105')\n }\n }\n\n // Aggiungi la classe focus-ring per il colore appropriato\n classes.push(`focus-visible:ring-${buttonColor}/50`)\n\n return classes.join(' ')\n}\n\nexport default getButtonClasses\n","function getClassName(config: any): string {\n // Mantieni tutte le altre classi Tailwind, ma ometti quelle di colore di sfondo\n const classList: string[] = [];\n\n // Gestione campi compositi\n ['p', 'm'].forEach((field) => {\n if (config[field]?.className) {\n classList.push(config[field].className);\n }\n });\n\n // Gestione campi diretti\n ['fs', 'h', 'container'].forEach((field) => {\n if (config[field]) {\n classList.push(config[field]);\n }\n });\n\n // Altre classi che non sono colori dinamici\n if (config.bgi && config.bgi.url) {\n classList.push('bg-no-repeat bg-cover');\n }\n if (config.boxShadow) {\n classList.push(config.boxShadow);\n }\n if (config.borderRadius) {\n classList.push(config.borderRadius);\n }\n\n return classList.join(' ');\n}\nexport default getClassName;\n","import React from 'react'\n\nfunction getInlineStyles(config: any): React.CSSProperties {\n const styles: React.CSSProperties = {}\n\n // Gestisci il background color con stile inline\n if (config.bgc) {\n styles.backgroundColor = config.bgc\n }\n\n // Gestione background image\n if (config.bgi && config.bgi.url) {\n styles.backgroundImage = `url(\"${config.bgi.url}\")`\n\n // Gestione focal point\n if (typeof config.bgi.focalX === 'number' && typeof config.bgi.focalY === 'number') {\n styles.backgroundPosition = `${config.bgi.focalX}% ${config.bgi.focalY}%`\n }\n }\n\n return styles\n}\n\nexport default getInlineStyles\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.esm.js","sources":["../src/hexToRgb.ts","../src/generateCssVars.ts","../src/getButtonClasses.ts","../src/getClassName.ts","../src/getInlineStyles.ts"],"sourcesContent":["const hexToRgb = (hex: string): { r: number; g: number; b: number } => {\n // Rimuove il simbolo `#` se presente\n const cleanedHex = hex.replace(/^#/, '');\n\n // Controlla che il colore sia valido (3 o 6 caratteri)\n if (!/^([A-Fa-f0-9]{3}|[A-Fa-f0-9]{6})$/.test(cleanedHex)) {\n throw new Error(`Colore HEX non valido: ${hex}`);\n }\n\n // In caso di formato corto (es. \"FFF\"), lo converte in formato lungo (es. \"FFFFFF\")\n const expandedHex =\n cleanedHex.length === 3\n ? cleanedHex\n .split('')\n .map(char => char + char)\n .join('')\n : cleanedHex;\n\n // Converte il valore HEX in decimali per R, G e B\n const r = parseInt(expandedHex.slice(0, 2), 16);\n const g = parseInt(expandedHex.slice(2, 4), 16);\n const b = parseInt(expandedHex.slice(4, 6), 16);\n\n return { r, g, b };\n};\n\nexport default hexToRgb;","import hexToRgb from \"./hexToRgb\";\n\nfunction generateCssVars(settings: {\n headingFont?: string;\n textFont?: string;\n foregroundColor?: string;\n primaryColor?: string;\n secondaryColor?: string;\n accentColor?: string;\n darkColor?: string;\n lightColor?: string;\n}): string {\n // Gestione robusta dei font\n const fontWeights = [300, 400, 500, 600, 700, 800];\n\n const fontsToImport = [settings.headingFont, settings.textFont]\n .filter(Boolean)\n .map(f => {\n if (!f) return '';\n // Aggiungiamo il parametro wght per specificare i pesi da caricare\n return `@import url('https://fonts.googleapis.com/css2?family=${f.replace(\n / /g,\n \"+\"\n )}:wght@${fontWeights.join(';')}&display=swap');`\n })\n .join(\"\\n\");\n\n\n const generateOpacityVariants = (color: string | undefined, name: string): string => {\n if (!color) {\n return '';\n }\n\n try {\n const rgbValue = hexToRgb(color);\n\n if (!rgbValue || typeof rgbValue.r !== 'number' ||\n typeof rgbValue.g !== 'number' ||\n typeof rgbValue.b !== 'number') {\n console.warn(`Impossibile convertire il colore ${name}: ${color}`);\n return '';\n }\n\n const { r, g, b } = rgbValue;\n\n const opacityVars = Array.from({ length: 9 }, (_, i) => {\n const opacity = (i + 1) * 10;\n return `--color-${name}-${opacity}: rgba(${r}, ${g}, ${b}, ${opacity / 100});`;\n }).join(\"\\n\");\n\n return `\n --color-${name}: rgb(${r}, ${g}, ${b}); /* Default (opacità 1) */\n ${opacityVars}\n `;\n } catch (error) {\n console.warn(`Errore nella generazione delle varianti di opacità per ${name}: ${error}`);\n return '';\n }\n };\n\n // Genera variabili solo per i colori forniti\n const primaryVars = generateOpacityVariants(settings.primaryColor, \"primary\");\n const secondaryVars = generateOpacityVariants(settings.secondaryColor, \"secondary\");\n const accentVars = generateOpacityVariants(settings.accentColor, \"accent\");\n const darkVars = generateOpacityVariants(settings.darkColor, \"dark\");\n const lightVars = generateOpacityVariants(settings.lightColor, \"light\");\n\n // Genera i valori dei font in modo sicuro\n const headingFontValue = settings.headingFont\n ? `'${settings.headingFont}', sans-serif`\n : 'system-layout, sans-serif';\n\n const textFontValue = settings.textFont\n ? `'${settings.textFont}', sans-serif`\n : 'system-layout, sans-serif';\n\n return `\n ${fontsToImport}\n\n :root {\n --font-heading: ${headingFontValue};\n --font-text: ${textFontValue};\n --color-white: #ffffff;\n --color-black: #000000;\n --color-foreground: ${settings.foregroundColor || '#FFFFFF'};\n ${primaryVars}\n ${secondaryVars}\n ${accentVars}\n ${darkVars}\n ${lightVars}\n }\n `;\n}\n\nexport default generateCssVars;\n","export type ButtonConfig = {\n show: boolean\n buttonStyle?: 'solid' | 'outline' | 'ghost' | 'link'\n buttonColor?: 'primary' | 'secondary' | 'accent' | 'dark' | 'light'\n buttonSize?: 'small' | 'default' | 'medium' | 'large' | 'xl'\n buttonRounded?: 'none' | 'sm' | 'default' | 'lg' | 'full'\n useIcon?: boolean\n iconPosition?: 'left' | 'right' | 'only'\n iconName?: string\n iconVariant?: 'outline' | 'solid'\n alignment?: 'left' | 'center' | 'right'\n textColor?: 'primary' | 'secondary' | 'accent' | 'dark' | 'light' | 'white' | 'black'\n additionalEffects?: ('shadow' | 'transition' | 'scale')[]\n}\n\nexport type ActionConfig = ButtonConfig & {\n show?: boolean\n actionType?: 'internalLink' | 'externalLink' | 'customAction'\n internalLink?: {\n relationTo: string\n value: {\n slug: string\n id: string\n }\n }\n externalLink?: string\n customActionId?: string\n label?: string\n onClick?: () => void\n}\n\nfunction getButtonClasses(config: ActionConfig): string {\n const {\n buttonStyle = 'solid',\n buttonColor = 'primary',\n buttonSize = 'default',\n buttonRounded = 'default',\n iconPosition = 'left',\n textColor, // Aggiungiamo il colore del testo\n additionalEffects = [],\n } = config\n\n const classes: string[] = [\n 'inline-flex',\n 'items-center',\n 'justify-center',\n 'font-medium',\n 'focus:outline-none',\n 'focus-visible:ring-2',\n 'focus-visible:ring-offset-2',\n ]\n\n // Stile base\n switch (buttonStyle) {\n case 'solid':\n classes.push(`bg-${buttonColor}`)\n // Usa textColor se specificato, altrimenti usa il colore predefinito basato sul buttonColor\n if (textColor) {\n classes.push(`text-${textColor}`)\n } else {\n classes.push(buttonColor === 'light' ? 'text-dark' : 'text-white')\n }\n classes.push(`hover:bg-${buttonColor}/90`)\n break\n case 'outline':\n classes.push(`border`)\n classes.push(`border-${buttonColor}`)\n // Usa textColor se specificato, altrimenti usa il colore del bottone\n if (textColor) {\n classes.push(`text-${textColor}`)\n // Mantieni lo stesso colore di testo per l'hover, a meno che non sia specificato diversamente\n classes.push(`hover:text-${textColor}`)\n } else {\n classes.push(`text-${buttonColor}`)\n classes.push(`hover:text-${buttonColor === 'light' ? 'dark' : 'white'}`)\n }\n classes.push(`hover:bg-${buttonColor}`)\n break\n case 'ghost':\n // Usa textColor se specificato, altrimenti usa il colore del bottone\n if (textColor) {\n classes.push(`text-${textColor}`)\n } else {\n classes.push(`text-${buttonColor}`)\n }\n classes.push(`hover:bg-${buttonColor}/10`)\n break\n case 'link':\n // Usa textColor se specificato, altrimenti usa il colore del bottone\n if (textColor) {\n classes.push(`text-${textColor}`)\n } else {\n classes.push(`text-${buttonColor}`)\n }\n classes.push('hover:underline')\n break\n }\n\n // Dimensione\n switch (buttonSize) {\n case 'small':\n classes.push('text-xs px-2.5 py-1.5')\n break\n case 'default':\n classes.push('text-sm px-4 py-2')\n break\n case 'medium':\n classes.push('text-base px-5 py-2.5')\n break\n case 'large':\n classes.push('text-lg px-6 py-3')\n break\n case 'xl':\n classes.push('text-xl px-8 py-4')\n break\n }\n\n // Se è solo icona, aggiusta il padding per renderlo quadrato/rotondo\n if (config.useIcon && iconPosition === 'only') {\n classes.push('p-0')\n switch (buttonSize) {\n case 'small':\n classes.push('w-7 h-7')\n break\n case 'default':\n classes.push('w-9 h-9')\n break\n case 'medium':\n classes.push('w-10 h-10')\n break\n case 'large':\n classes.push('w-12 h-12')\n break\n case 'xl':\n classes.push('w-14 h-14')\n break\n }\n }\n\n // Arrotondamento\n switch (buttonRounded) {\n case 'none':\n classes.push('rounded-none')\n break\n case 'sm':\n classes.push('rounded-sm')\n break\n case 'default':\n classes.push('rounded')\n break\n case 'lg':\n classes.push('rounded-lg')\n break\n case 'full':\n classes.push('rounded-full')\n break\n }\n\n // Effetti aggiuntivi\n if (additionalEffects) {\n if (additionalEffects.includes('shadow')) {\n classes.push('shadow-md hover:shadow-lg')\n }\n if (additionalEffects.includes('transition')) {\n classes.push('transition-all duration-200')\n }\n if (additionalEffects.includes('scale')) {\n classes.push('transform hover:scale-105')\n }\n }\n\n // Aggiungi la classe focus-ring per il colore appropriato\n classes.push(`focus-visible:ring-${buttonColor}/50`)\n\n return classes.join(' ')\n}\n\nexport default getButtonClasses\n","function getClassName(config: any): string {\n // Mantieni tutte le altre classi Tailwind, ma ometti quelle di colore di sfondo\n const classList: string[] = [];\n\n // Gestione campi compositi\n ['p', 'm'].forEach((field) => {\n if (config[field]?.className) {\n classList.push(config[field].className);\n }\n });\n\n // Gestione campi diretti\n ['fs', 'h', 'container'].forEach((field) => {\n if (config[field]) {\n classList.push(config[field]);\n }\n });\n\n // Altre classi che non sono colori dinamici\n if (config.bgi && config.bgi.url) {\n classList.push('bg-no-repeat bg-cover');\n }\n if (config.boxShadow) {\n classList.push(config.boxShadow);\n }\n if (config.borderRadius) {\n classList.push(config.borderRadius);\n }\n\n return classList.join(' ');\n}\nexport default getClassName;\n","import React from 'react'\n\nfunction getInlineStyles(config: any): React.CSSProperties {\n const styles: React.CSSProperties = {}\n\n // Gestisci il background color con stile inline\n if (config.bgc) {\n styles.backgroundColor = config.bgc\n }\n\n // Gestione background image\n if (config.bgi && config.bgi.url) {\n styles.backgroundImage = `url(\"${config.bgi.url}\")`\n\n // Gestione focal point\n if (typeof config.bgi.focalX === 'number' && typeof config.bgi.focalY === 'number') {\n styles.backgroundPosition = `${config.bgi.focalX}% ${config.bgi.focalY}%`\n }\n }\n\n return styles\n}\n\nexport default getInlineStyles\n"],"names":[],"mappings":"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"}
|
|
@@ -21,12 +21,9 @@ type FieldTypeMap = {
|
|
|
21
21
|
text: TextField;
|
|
22
22
|
upload: UploadField;
|
|
23
23
|
};
|
|
24
|
-
|
|
24
|
+
type AllFieldTypes = keyof FieldTypeMap;
|
|
25
25
|
type BaseOverride<T extends AllFieldTypes> = Partial<Omit<FieldTypeMap[T], 'type'>> & {
|
|
26
26
|
type?: T;
|
|
27
27
|
};
|
|
28
|
-
|
|
29
|
-
export
|
|
30
|
-
[K in AllFieldTypes]: FieldOverride<K>;
|
|
31
|
-
}[AllFieldTypes];
|
|
32
|
-
export {};
|
|
28
|
+
type FieldOverride<T extends AllFieldTypes> = BaseOverride<T>;
|
|
29
|
+
export default FieldOverride;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.cjs.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default as fieldOverride } from './fieldOverride';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.esm.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|