@bagelink/vue 1.4.87 → 1.4.89

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.
@@ -55,9 +55,9 @@ export interface BaseBagelField<T, P extends Path<T, PO>, PO extends PathsOption
55
55
  'disabled'?: boolean;
56
56
  'helptext'?: string;
57
57
  'options'?: BagelFieldOptions<T, P>;
58
- 'children'?: SchemaChild<T, P, PO>[];
58
+ 'children'?: SchemaChild<T, Path<T, PO>, PO>[];
59
59
  'slots'?: {
60
- [key: string]: SchemaChild<T, P, PO>[];
60
+ [key: string]: SchemaChild<T, Path<T, PO>, PO>[];
61
61
  };
62
62
  'defaultValue'?: any;
63
63
  'vIf'?: VIfType<T, P>;
@@ -73,8 +73,9 @@ export type MappedBaseBagelFieldP<T, P extends Path<T, PO>, PO extends PathsOpti
73
73
  export type FieldByP<T, P extends Path<T, PO>, PO extends PathsOptions = DefaultPathsOptions> = MappedBaseBagelFieldP<T, P, PO>;
74
74
  export type Field<T, PO extends PathsOptions = DefaultPathsOptions> = MappedBaseBagelFieldP<T, Path<T, PO>, PO>;
75
75
  export type BglFieldT<T, PO extends PathsOptions = DefaultPathsOptions> = Field<T, PO>;
76
- export type BglFormSchemaT<T, PO extends PathsOptions = DefaultPathsOptions> = Field<T, PO>[];
77
- export type ShallowBglFormSchemaT<T, PO extends PathsOptions = ShallowPathsOptions> = Field<T, PO>[];
76
+ export type SchemaField<T, PO extends PathsOptions = DefaultPathsOptions> = Field<T, PO> | ElementField<T, PO>;
77
+ export type BglFormSchemaT<T, PO extends PathsOptions = DefaultPathsOptions> = SchemaField<T, PO>[];
78
+ export type ShallowBglFormSchemaT<T, PO extends PathsOptions = ShallowPathsOptions> = SchemaField<T, PO>[];
78
79
  export interface InputBagelField<T, P extends Path<T, PO>, PO extends PathsOptions = DefaultPathsOptions> extends BaseBagelField<T, P, PO> {
79
80
  $el: 'text' | ComponentExposed<typeof TextInput>;
80
81
  type?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"BagelForm.d.ts","sourceRoot":"","sources":["../../src/types/BagelForm.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BagelForm.d.ts","sourceRoot":"","sources":["../../src/types/BagelForm.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import { BglFormSchemaT } from 'src/types/BagelForm';
2
+ import { OrderRead } from './t.types';
3
+ export declare function orderTableSchema(): BglFormSchemaT<OrderRead>;
4
+ //# sourceMappingURL=schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/utils/schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AACzD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,WAAW,CAAA;AAG1C,wBAAgB,gBAAgB,IAAI,cAAc,CAAC,SAAS,CAAC,CAW5D"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@bagelink/vue",
3
3
  "type": "module",
4
- "version": "1.4.87",
4
+ "version": "1.4.89",
5
5
  "description": "Bagel core sdk packages",
6
6
  "author": {
7
7
  "name": "Neveh Allon",
@@ -18,7 +18,7 @@ const props = withDefaults(
18
18
  border?: boolean
19
19
  outline?: boolean
20
20
  thin?: boolean
21
- size?: 'xs' | 's' | 'm' | 'l' | 'xl'
21
+ size?: 'xs' | 's' | 'm' | 'l' | 'xl' | 'extra-small' | 'small' | 'medium' | 'large' | 'extra-large'
22
22
  type?: 'button' | 'submit' | 'reset'
23
23
  loading?: boolean
24
24
  role?: string
@@ -85,6 +85,25 @@ async function handleClick(event: MouseEvent) {
85
85
 
86
86
  const iconSizeComputed = $computed(() => {
87
87
  if (props.iconSize !== undefined) return props.iconSize
88
+
89
+ // Default icon sizes based on button size
90
+ const sizeMap = {
91
+ xs: 0.7,
92
+ 'extra-small': 0.7,
93
+ s: 0.9,
94
+ small: 0.9,
95
+ m: 1,
96
+ medium: 1,
97
+ l: 1.3,
98
+ large: 1.3,
99
+ xl: 1.6,
100
+ 'extra-large': 1.6
101
+ }
102
+
103
+ if (props.size && sizeMap[props.size as keyof typeof sizeMap]) {
104
+ return sizeMap[props.size as keyof typeof sizeMap]
105
+ }
106
+
88
107
  return isMobileScreen.value ? 1 : 1.2
89
108
  })
90
109
 
@@ -114,6 +133,11 @@ const slots: SetupContext['slots'] = useSlots()
114
133
  <component :is="isComponent" v-ripple="ripple" v-bind="bind" :disabled="disabled" class="bgl_btn" :class="{
115
134
  'bgl_btn-icon': icon && !slots.default && !value,
116
135
  thin,
136
+ 'bgl_btn_xsSize': size === 'xs' || size === 'extra-small',
137
+ 'bgl_btn_sSize': size === 's' || size === 'small',
138
+ 'bgl_btn_mSize': size === 'm' || size === 'medium',
139
+ 'bgl_btn_lSize': size === 'l' || size === 'large',
140
+ 'bgl_btn_xlSize': size === 'xl' || size === 'extra-large',
117
141
  round,
118
142
  'bgl_btn_flat': flat,
119
143
  'bgl_btn-border': border || outline,
@@ -135,66 +159,6 @@ const slots: SetupContext['slots'] = useSlots()
135
159
  <style scoped>
136
160
  @import '../styles/btnColors.css';
137
161
 
138
- .bgl_btn-green {
139
- --btn-bg: var(--bgl-green);
140
- --btn-color: var(--bgl-light-text);
141
- --btn-flat-color: var(--bgl-green);
142
- }
143
-
144
- .bgl_btn-yellow {
145
- --btn-bg: var(--bgl-yellow);
146
- --btn-color: var(--bgl-black);
147
- --btn-flat-color: var(--bgl-yellow);
148
- }
149
-
150
- .bgl_btn-blue {
151
- --btn-bg: var(--bgl-blue);
152
- --btn-color: var(--bgl-light-text);
153
- --btn-flat-color: var(--bgl-blue);
154
- }
155
-
156
- .bgl_btn-primary {
157
- --btn-bg: var(--bgl-primary);
158
- --btn-color: var(--bgl-light-text);
159
- --btn-flat-color: var(--bgl-primary);
160
- }
161
-
162
- .bgl_btn-red {
163
- --btn-bg: var(--bgl-red);
164
- --btn-color: var(--bgl-light-text);
165
- --btn-flat-color: var(--bgl-red);
166
- }
167
-
168
- .bgl_btn-white {
169
- --btn-bg: var(--bgl-white);
170
- --btn-color: var(--bgl-black);
171
- --btn-flat-color: var(--bgl-white);
172
- }
173
-
174
- .bgl_btn-black {
175
- --btn-bg: var(--bgl-black);
176
- --btn-color: var(--bgl-light-text);
177
- --btn-flat-color: var(--bgl-black);
178
- }
179
-
180
- .bgl_btn-gray {
181
- --btn-bg: var(--bgl-gray-light);
182
- --btn-color: var(--bgl-black);
183
- --btn-flat-color: var(--bgl-gray);
184
- }
185
-
186
- .bgl_btn-light {
187
- --btn-bg: var(--bgl-primary-light);
188
- --btn-color: var(--bgl-primary);
189
- --btn-flat-color: var(--bgl-primary-light);
190
- }
191
-
192
- .bgl_btn-gray-light {
193
- --btn-bg: var(--bgl-gray-light);
194
- --btn-color: var(--bgl-gray);
195
- --btn-flat-color: var(--bgl-gray-light);
196
- }
197
-
198
162
  .bgl_btn {
199
163
  padding-left: var(--btn-padding);
200
164
  padding-right: var(--btn-padding);
@@ -254,24 +218,8 @@ a {
254
218
  .bgl_btn-icon.bgl_btn_flat:active:not(:disabled) {
255
219
  background: var(--bgl-gray-tint-dark);
256
220
  }
257
-
258
- .bgl_btn.thin {
259
- padding-inline: calc(var(--btn-padding) / 3);
260
- border-radius: calc(var(--btn-border-radius) / 1.5);
261
- }
262
-
263
221
  .bgl_btn.round {
264
- border-radius: 1000px;
265
- }
266
-
267
- .bgl_btn-icon.thin {
268
- height: calc(var(--btn-height) / 1.5);
269
- width: calc(var(--btn-height) / 1.5);
270
- line-height: normal;
271
- }
272
-
273
- .bgl_btn-icon.thin .bgl_btn-flex {
274
- height: 100%;
222
+ border-radius: 1000px !important;
275
223
  }
276
224
 
277
225
  [dir="rtl"] .bgl_btn-icon {
@@ -303,4 +251,89 @@ a {
303
251
  filter: grayscale(0.3);
304
252
  cursor: not-allowed;
305
253
  }
254
+ .bgl_btn-icon .bgl_btn-flex {
255
+ height: 100%;
256
+ }
257
+
258
+ /* xs size */
259
+ .bgl_btn_xsSize {
260
+ padding-inline: calc(var(--btn-padding) / 6);
261
+ border-radius: calc(var(--btn-border-radius) / 2);
262
+ font-size: calc(var(--input-font-size) * 0.6);
263
+ }
264
+
265
+ .bgl_btn-icon.bgl_btn_xsSize {
266
+ height: calc(var(--btn-height) / 2);
267
+ width: calc(var(--btn-height) / 2);
268
+ line-height: normal;
269
+ }
270
+
271
+
272
+ .bgl_btn_xsSize {
273
+ height: calc(var(--btn-height) / 2);
274
+ line-height: calc(var(--btn-height) / 2);
275
+ }
276
+
277
+ .bgl_btn_xsSize .bgl_btn-flex {
278
+ gap: 0.2rem;
279
+ }
280
+
281
+ /* s size */
282
+ .bgl_btn.thin,
283
+ .bgl_btn_sSize {
284
+ padding-inline: calc(var(--btn-padding) / 3);
285
+ border-radius: calc(var(--btn-border-radius) / 1.5);
286
+ }
287
+
288
+ .bgl_btn-icon.thin,
289
+ .bgl_btn-icon.bgl_btn_sSize {
290
+ height: calc(var(--btn-height) / 1.5);
291
+ width: calc(var(--btn-height) / 1.5);
292
+ line-height: normal;
293
+ }
294
+
295
+ .bgl_btn.thin,
296
+ .bgl_btn_sSize {
297
+ height: calc(var(--btn-height) * 0.7);
298
+ line-height: calc(var(--btn-height) * 0.7);
299
+ }
300
+
301
+ /* m size */
302
+ .bgl_btn_mSize {
303
+ padding-inline: var(--btn-padding);
304
+ font-size: var(--input-font-size);
305
+ height: var(--btn-height);
306
+ line-height: var(--btn-height);
307
+ }
308
+
309
+ .bgl_btn-icon.bgl_btn_mSize {
310
+ height: var(--btn-height);
311
+ width: var(--btn-height);
312
+ }
313
+
314
+ /* l size */
315
+ .bgl_btn_lSize {
316
+ padding-inline: calc(var(--btn-padding) * 1.3);
317
+ font-size: calc(var(--input-font-size) * 1.1);
318
+ height: calc(var(--btn-height) * 1.2);
319
+ line-height: calc(var(--btn-height) * 1.2);
320
+ }
321
+
322
+ .bgl_btn-icon.bgl_btn_lSize {
323
+ height: calc(var(--btn-height) * 1.2);
324
+ width: calc(var(--btn-height) * 1.2);
325
+ }
326
+
327
+ /* xl size */
328
+ .bgl_btn_xlSize {
329
+ padding-inline: calc(var(--btn-padding) * 1.6);
330
+ font-size: calc(var(--input-font-size) * 1.3);
331
+ height: calc(var(--btn-height) * 1.5);
332
+ line-height: calc(var(--btn-height) * 1.5);
333
+ }
334
+
335
+ .bgl_btn-icon.bgl_btn_xlSize {
336
+ height: calc(var(--btn-height) * 1.5);
337
+ width: calc(var(--btn-height) * 1.5);
338
+ }
306
339
  </style>
@@ -1,4 +1,4 @@
1
- import type { BglFormSchemaT, Field } from '@bagelink/vue'
1
+ import type { BglFormSchemaT, Field, SchemaField } from '@bagelink/vue'
2
2
  import type { DefaultPathsOptions } from 'type-fest/source/paths'
3
3
  import type { MaybeRefOrGetter } from 'vue'
4
4
  import type { SortDirectionsT } from '../../types/TableSchema'
@@ -63,7 +63,10 @@ export function useTableData<T extends { [key: string]: any }>(options: UseTable
63
63
 
64
64
  // If we have a valid schema with fields, filter out fields without an ID
65
65
  if (Array.isArray(schema) && schema.length > 0) {
66
- resolvedSchema.value = schema.filter(field => field && field.id).map(autoTransform)
66
+ resolvedSchema.value = (schema as SchemaField<T>[])
67
+ .filter(field => field && (field as any).id)
68
+ .map(field => field as Field<T>)
69
+ .map(autoTransform)
67
70
  } else if (Array.isArray(dataValue) && dataValue.length > 0) {
68
71
  // If no schema is provided or it's empty, generate a default schema from the data
69
72
  const firstItem = dataValue[0]
@@ -1,5 +1,5 @@
1
1
  <script setup lang="ts" generic="T extends {[key:string]:any}, P extends Path<T>">
2
- import type { Field, BglFormSchemaT, Path, BaseBagelField } from '@bagelink/vue'
2
+ import type { BglFormSchemaT, Path, BaseBagelField } from '@bagelink/vue'
3
3
  import type { MaybeRefOrGetter } from 'vue'
4
4
  import { onMounted, watch, ref, computed, toValue } from 'vue'
5
5
  import { useSchemaField } from '../../composables/useSchemaField'
@@ -104,7 +104,7 @@ const { renderField } = useSchemaField<T, P>({
104
104
  }
105
105
  })
106
106
 
107
- const renderSchemaField = (field: Field<T>) => renderField(field as BaseBagelField<T, P>)
107
+ const renderSchemaField = (field: any) => renderField(field as BaseBagelField<T, P>)
108
108
 
109
109
  // Add new method to handle slot input changes
110
110
  function handleSlotInputChange(event: Event) {
@@ -121,28 +121,19 @@ defineExpose({ form, isDirty, validateForm, checkValidity })
121
121
  <template>
122
122
  <template v-if="formState !== 'success' || !$slots.success">
123
123
  <form
124
- v-if="props.tag === 'form'" ref="form"
125
- :class="props.class"
126
- @submit.prevent="handleSubmit"
124
+ v-if="props.tag === 'form'" ref="form" :class="props.class" @submit.prevent="handleSubmit"
127
125
  @input="handleSlotInputChange"
128
126
  >
129
127
  <!-- Render fields -->
130
128
  <template v-if="resolvedSchema">
131
- <Component
132
- :is="renderSchemaField(field)"
133
- v-for="field in resolvedSchema"
134
- :key="field.id"
135
- />
129
+ <Component :is="renderSchemaField(field as any)" v-for="field in resolvedSchema" :key="field.id" />
136
130
  </template>
137
131
 
138
132
  <!-- Default slot -->
139
133
  <slot v-else />
140
134
  <!-- Submit slot -->
141
135
  <slot
142
- name="submit"
143
- :submit="handleSubmit"
144
- :isDirty="isDirty"
145
- :validateForm="validateForm"
136
+ name="submit" :submit="handleSubmit" :isDirty="isDirty" :validateForm="validateForm"
146
137
  :formState="formState"
147
138
  />
148
139
  </form>
@@ -151,9 +142,7 @@ defineExpose({ form, isDirty, validateForm, checkValidity })
151
142
  <template v-else>
152
143
  <template v-if="resolvedSchema">
153
144
  <component
154
- :is="renderSchemaField(field)"
155
- v-for="field in resolvedSchema"
156
- :key="field.id"
145
+ :is="renderSchemaField(field as any)" v-for="field in resolvedSchema" :key="field.id"
157
146
  :class="props.class"
158
147
  />
159
148
  </template>
@@ -68,8 +68,8 @@ const filteredSchema = computed(() => {
68
68
  const schema = computedSchema.value
69
69
  return schema.filter((step, _index) => {
70
70
  // Skip steps that have vIf or v-if returning false
71
- if (step.vIf !== undefined || step['v-if'] !== undefined) {
72
- const condition = step.vIf ?? step['v-if']
71
+ if ((step as any).vIf !== undefined || (step as any)['v-if'] !== undefined) {
72
+ const condition = (step as any).vIf ?? (step as any)['v-if']
73
73
  // If condition is a function, evaluate it with current form data
74
74
  if (typeof condition === 'function') {
75
75
  return condition(undefined, formData.value)
@@ -94,7 +94,7 @@ const numberOfSteps = computed(() => filteredSchema.value.length)
94
94
  const schemaIndexMap = computed(() => {
95
95
  const map: number[] = []
96
96
  computedSchema.value.forEach((step, index) => {
97
- const vIfCondition = step.vIf ?? step['v-if']
97
+ const vIfCondition = (step as any).vIf ?? (step as any)['v-if']
98
98
  let shouldInclude = true
99
99
 
100
100
  if (vIfCondition !== undefined) {
@@ -1,5 +1,5 @@
1
1
  import type { MaybeRefOrGetter } from 'vue'
2
- import type { BglFormSchemaT } from '../types'
2
+ import type { BglFormSchemaT, Field } from '../types'
3
3
  import { ref, toValue } from 'vue'
4
4
  import { appendScript, downloadFile, getNestedValue } from '../utils'
5
5
 
@@ -21,11 +21,12 @@ function formatData<T>(data: T[], schema?: BglFormSchemaT<T>) {
21
21
  return schema
22
22
  ? data.map((row) => {
23
23
  const newRow: any = {}
24
- schema.forEach(({ id, transform, label }) => {
25
- if (id) {
24
+ schema.forEach((sf) => {
25
+ const { id, transform, label } = sf as unknown as Field<T>
26
+ if (id as any) {
26
27
  // Support for dot notation to access nested properties
27
- const value = getNestedValue(row, id)
28
- const key = label || id
28
+ const value = getNestedValue(row, id as any)
29
+ const key = (label as any) || (id as any)
29
30
  newRow[key] = transform?.(value, row) || value || ''
30
31
  }
31
32
  })
@@ -64,7 +65,12 @@ export function useExcel() {
64
65
  const XLSX = await ensureXLSXLoaded()
65
66
 
66
67
  const formattedData = formatData(data, schema)
67
- const headers = schema.length > 0 ? schema.map(({ id, label }) => ({ v: label || id, t: 's' })) : []
68
+ const headers = schema.length > 0
69
+ ? schema.map((sf) => {
70
+ const { id, label } = sf as unknown as Field<T>
71
+ return { v: (label as any) || (id as any), t: 's' }
72
+ })
73
+ : []
68
74
  const ws = XLSX.utils.json_to_sheet(formattedData)
69
75
 
70
76
  if (headers.length > 0) {
@@ -78,8 +84,13 @@ export function useExcel() {
78
84
  }
79
85
 
80
86
  async function downloadCSV(data: Record<string, any>[], fileName = 'data', schema?: BglFormSchemaT<any>) {
81
- const keys = schema ? schema.map(({ id }) => id).filter(Boolean) : [...new Set(data.flatMap(objKeys))]
82
- const columns = schema ? schema.map(({ label, id }) => label || strToTitle(id)) : keys.map(strToTitle)
87
+ const keys = schema ? (schema.map(sf => (sf as unknown as Field<any>).id).filter(Boolean) as string[]) : [...new Set(data.flatMap(objKeys))]
88
+ const columns = schema
89
+ ? schema.map((sf) => {
90
+ const { label, id } = sf as unknown as Field<any>
91
+ return (label as any) || strToTitle(id as any)
92
+ })
93
+ : keys.map(strToTitle)
83
94
 
84
95
  const formattedData = formatData(data, schema)
85
96
  const csv = [
@@ -1,144 +1,140 @@
1
1
  .bgl_btn,
2
2
  .bgl_flatBtn,
3
3
  .bgl_btn-icon {
4
- font-family: inherit;
5
- white-space: nowrap;
6
- cursor: pointer;
7
- box-sizing: border-box;
8
- user-select: none;
9
- border: none;
10
- transition: var(--bgl-transition);
11
- border-radius: var(--btn-border-radius);
12
- line-height: var(--btn-height);
13
- font-size: var(--input-font-size);
14
- display: inline-block;
15
- height: var(--btn-height);
16
- padding: 0;
4
+ font-family: inherit;
5
+ white-space: nowrap;
6
+ cursor: pointer;
7
+ box-sizing: border-box;
8
+ user-select: none;
9
+ border: none;
10
+ transition: var(--bgl-transition);
11
+ border-radius: var(--btn-border-radius);
12
+ line-height: var(--btn-height);
13
+ font-size: var(--input-font-size);
14
+ display: inline-block;
15
+ height: var(--btn-height);
16
+ padding: 0;
17
17
  }
18
18
 
19
19
  .btn-close {
20
- margin-top: -20px;
21
- margin-inline-end: -20px;
22
- margin-inline-start: auto;
23
- margin-bottom: 15px;
24
- transition: var(--bgl-transition);
25
- height: 30px;
26
- width: 30px;
27
- opacity: 0.6;
28
- cursor: pointer;
29
- border-radius: 100%;
30
- outline: 2px solid transparent;
31
- display: flex;
32
- align-items: center;
33
- justify-content: center;
20
+ margin-top: -20px;
21
+ margin-inline-end: -20px;
22
+ margin-inline-start: auto;
23
+ margin-bottom: 15px;
24
+ transition: var(--bgl-transition);
25
+ height: 30px;
26
+ width: 30px;
27
+ opacity: 0.6;
28
+ cursor: pointer;
29
+ border-radius: 100%;
30
+ outline: 2px solid transparent;
31
+ display: flex;
32
+ align-items: center;
33
+ justify-content: center;
34
34
  }
35
35
 
36
36
  .btn-close:hover {
37
- background: var(--bgl-gray-light);
38
- opacity: 1;
37
+ background: var(--bgl-gray-light);
38
+ opacity: 1;
39
39
  }
40
40
 
41
41
  .btn-close:active {
42
- background: var(--bgl-gray);
42
+ background: var(--bgl-gray);
43
43
  }
44
44
 
45
45
  .btn-close::before {
46
- content: 'close';
47
- font-family: 'Material Symbols Outlined', serif;
46
+ content: 'close';
47
+ font-family: 'Material Symbols Outlined', serif;
48
48
  }
49
49
 
50
- .bgl_btn.thin {
51
- height: calc(var(--btn-height) * 0.7);
52
- line-height: calc(var(--btn-height) * 0.7);
53
- }
54
50
 
55
51
  .hover {
56
- cursor: pointer;
57
- transition: all 400ms ease;
52
+ cursor: pointer;
53
+ transition: all 400ms ease;
58
54
  }
59
55
 
60
56
  .hover:hover {
61
- filter: brightness(90%);
57
+ filter: brightness(90%);
62
58
  }
63
59
 
64
60
  .hover:active {
65
- filter: brightness(80%);
61
+ filter: brightness(80%);
66
62
  }
67
63
 
68
64
  .border {
69
- border: 1px solid var(--border-color);
65
+ border: 1px solid var(--border-color);
70
66
  }
71
67
 
72
68
  .border-primary {
73
- border: 1px solid var(--bgl-primary);
69
+ border: 1px solid var(--bgl-primary);
74
70
  }
75
71
 
76
72
  .outline {
77
- outline: 1px solid var(--border-color);
73
+ outline: 1px solid var(--border-color);
78
74
  }
79
75
 
80
76
  .outline-dashed {
81
- outline: 2px dashed var(--border-color);
77
+ outline: 2px dashed var(--border-color);
82
78
  }
83
79
 
84
80
  .outline-primary {
85
- outline: 1px solid var(--bgl-primary);
81
+ outline: 1px solid var(--bgl-primary);
86
82
  }
87
83
 
88
84
  .rotate-270 {
89
- transform: rotate(270deg);
85
+ transform: rotate(270deg);
90
86
  }
91
87
 
92
88
  .rotate-180 {
93
- transform: rotate(180deg);
89
+ transform: rotate(180deg);
94
90
  }
95
91
 
96
92
  .rotate-90 {
97
- transform: rotate(90deg);
93
+ transform: rotate(90deg);
98
94
  }
99
95
 
100
96
  .rotate-0 {
101
- transform: rotate(0deg) !important;
97
+ transform: rotate(0deg) !important;
102
98
  }
103
99
 
104
100
  @media screen and (max-width: 910px) {
105
- .bgl_btn {
106
- padding: 0 20px;
107
- }
101
+ .bgl_btn {
102
+ padding: 0 20px;
103
+ }
108
104
 
109
- .m_border {
110
- border: 1px solid var(--border-color);
111
- }
105
+ .m_border {
106
+ border: 1px solid var(--border-color);
107
+ }
112
108
 
113
- .m_rotate-270 {
114
- transform: rotate(270deg);
115
- }
109
+ .m_rotate-270 {
110
+ transform: rotate(270deg);
111
+ }
116
112
 
117
- .m_rotate-180 {
118
- transform: rotate(180deg);
119
- }
113
+ .m_rotate-180 {
114
+ transform: rotate(180deg);
115
+ }
120
116
 
121
- .m_rotate-90 {
122
- transform: rotate(90deg);
123
- }
117
+ .m_rotate-90 {
118
+ transform: rotate(90deg);
119
+ }
124
120
 
125
- .m_rotate-0 {
126
- transform: rotate(0deg) !important;
127
- }
121
+ .m_rotate-0 {
122
+ transform: rotate(0deg) !important;
123
+ }
128
124
  }
129
125
 
130
126
  .ripple {
131
- position: absolute;
132
- border-radius: 50%;
133
- transform: scale(0);
134
- background: rgba(0, 0, 0, 0.3);
135
- pointer-events: none;
136
- animation: rippleEffect 0.6s ease-out;
127
+ position: absolute;
128
+ border-radius: 50%;
129
+ transform: scale(0);
130
+ background: rgba(0, 0, 0, 0.3);
131
+ pointer-events: none;
132
+ animation: rippleEffect 0.6s ease-out;
137
133
  }
138
134
 
139
135
  @keyframes rippleEffect {
140
- to {
141
- transform: scale(4);
142
- opacity: 0;
143
- }
144
- }
136
+ to {
137
+ transform: scale(4);
138
+ opacity: 0;
139
+ }
140
+ }
File without changes