@topvisor/ui 1.5.6-topSchedule.1 → 1.5.6-topSelectorReactive.2
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/.chunks/api-DZQlrC2R.amd.js +2 -0
- package/.chunks/api-DZQlrC2R.amd.js.map +1 -0
- package/.chunks/{api-D5wIZnrK.esm.js → api-DZQlrC2R.esm.js} +21 -18
- package/.chunks/api-DZQlrC2R.esm.js.map +1 -0
- package/.chunks/{app-0qVCkgOO.amd.js → app-DinkodXi.amd.js} +2 -2
- package/.chunks/{app-0qVCkgOO.amd.js.map → app-DinkodXi.amd.js.map} +1 -1
- package/.chunks/{app-0qVCkgOO.esm.js → app-DinkodXi.esm.js} +11 -11
- package/.chunks/app-DinkodXi.esm.js.map +1 -0
- package/.chunks/{datepicker-CYAhR3K9.amd.js → datepicker-bozIEbDA.amd.js} +2 -2
- package/.chunks/{datepicker-CYAhR3K9.amd.js.map → datepicker-bozIEbDA.amd.js.map} +1 -1
- package/.chunks/{datepicker-CYAhR3K9.esm.js → datepicker-bozIEbDA.esm.js} +2 -2
- package/.chunks/{datepicker-CYAhR3K9.esm.js.map → datepicker-bozIEbDA.esm.js.map} +1 -1
- package/.chunks/{dialog-CdgC31H2.amd.js → dialog-BCDVMWG1.amd.js} +2 -2
- package/.chunks/{dialog-CdgC31H2.amd.js.map → dialog-BCDVMWG1.amd.js.map} +1 -1
- package/.chunks/{dialog-CdgC31H2.esm.js → dialog-BCDVMWG1.esm.js} +3 -3
- package/.chunks/{dialog-CdgC31H2.esm.js.map → dialog-BCDVMWG1.esm.js.map} +1 -1
- package/.chunks/{dialog_regionSelectorRegions-BFpuUEJM.amd.js → dialog_regionSelectorRegions-0M1fMu1a.amd.js} +2 -2
- package/.chunks/dialog_regionSelectorRegions-0M1fMu1a.amd.js.map +1 -0
- package/.chunks/{dialog_regionSelectorRegions-BFpuUEJM.esm.js → dialog_regionSelectorRegions-0M1fMu1a.esm.js} +6 -6
- package/.chunks/dialog_regionSelectorRegions-0M1fMu1a.esm.js.map +1 -0
- package/.chunks/forms-CY5MOh7a.amd.js +2 -0
- package/.chunks/forms-CY5MOh7a.amd.js.map +1 -0
- package/.chunks/{forms-BiKUURH4.esm.js → forms-CY5MOh7a.esm.js} +16 -14
- package/.chunks/forms-CY5MOh7a.esm.js.map +1 -0
- package/.chunks/formsExt-C9r4Gz9y.amd.js +2 -0
- package/.chunks/formsExt-C9r4Gz9y.amd.js.map +1 -0
- package/.chunks/{formsExt-Bk_fn1Pg.esm.js → formsExt-C9r4Gz9y.esm.js} +163 -159
- package/.chunks/formsExt-C9r4Gz9y.esm.js.map +1 -0
- package/.chunks/{mocker-C3O-c0Np.amd.js → mocker-Bl1SzAJY.amd.js} +2 -2
- package/.chunks/mocker-Bl1SzAJY.amd.js.map +1 -0
- package/.chunks/{mocker-C3O-c0Np.esm.js → mocker-Bl1SzAJY.esm.js} +6 -2
- package/.chunks/mocker-Bl1SzAJY.esm.js.map +1 -0
- package/.chunks/notice-bro62vCA.amd.js +4 -0
- package/.chunks/notice-bro62vCA.amd.js.map +1 -0
- package/.chunks/{notice-LFdPfo-5.esm.js → notice-bro62vCA.esm.js} +3 -3
- package/.chunks/notice-bro62vCA.esm.js.map +1 -0
- package/.chunks/popup-3cwJ8Hev.amd.js +2 -0
- package/.chunks/popup-3cwJ8Hev.amd.js.map +1 -0
- package/.chunks/{popup-KKfSSrM6.esm.js → popup-3cwJ8Hev.esm.js} +5 -3
- package/.chunks/popup-3cwJ8Hev.esm.js.map +1 -0
- package/.chunks/popup-CzhBQhVH.amd.js +2 -0
- package/.chunks/popup-CzhBQhVH.amd.js.map +1 -0
- package/.chunks/{popup-DB5g_8kB.esm.js → popup-CzhBQhVH.esm.js} +5 -5
- package/.chunks/popup-CzhBQhVH.esm.js.map +1 -0
- package/.chunks/punycode.es6-CMafsPEb.amd.js +2 -0
- package/.chunks/punycode.es6-CMafsPEb.amd.js.map +1 -0
- package/.chunks/punycode.es6-CMafsPEb.esm.js +105 -0
- package/.chunks/{punycode.es6-BZRFIj88.esm.js.map → punycode.es6-CMafsPEb.esm.js.map} +1 -1
- package/.chunks/store-DjQAOnrn.esm.js.map +1 -1
- package/.chunks/{utils-3uWRvFcX.amd.js → utils-Be-ScFyj.amd.js} +2 -2
- package/.chunks/{utils-3uWRvFcX.amd.js.map → utils-Be-ScFyj.amd.js.map} +1 -1
- package/.chunks/{utils-3uWRvFcX.esm.js → utils-Be-ScFyj.esm.js} +3 -3
- package/.chunks/{utils-3uWRvFcX.esm.js.map → utils-Be-ScFyj.esm.js.map} +1 -1
- package/.chunks/{utils-BiOp5DHs.amd.js → utils-ds_g-L_r.amd.js} +2 -2
- package/.chunks/utils-ds_g-L_r.amd.js.map +1 -0
- package/.chunks/{utils-BiOp5DHs.esm.js → utils-ds_g-L_r.esm.js} +5 -5
- package/.chunks/{utils-BiOp5DHs.esm.js.map → utils-ds_g-L_r.esm.js.map} +1 -1
- package/.chunks/{worker-BufdAd-a.amd.js → worker-Bv_yPPMv.amd.js} +2 -2
- package/.chunks/{worker-BufdAd-a.amd.js.map → worker-Bv_yPPMv.amd.js.map} +1 -1
- package/.chunks/{worker-BufdAd-a.esm.js → worker-Bv_yPPMv.esm.js} +3 -3
- package/.chunks/{worker-BufdAd-a.esm.js.map → worker-Bv_yPPMv.esm.js.map} +1 -1
- package/api/additional.js.map +1 -1
- package/api/index.amd.js +1 -1
- package/api/index.amd.js.map +1 -1
- package/api/index.js +1 -1
- package/assets/formsExt.css +1 -1
- package/assets/project.css +1 -1
- package/autoload-css-manifest.amd.json +4 -4
- package/autoload-css-manifest.json +4 -4
- package/charts/charts.amd.js +1 -1
- package/charts/charts.amd.js.map +1 -1
- package/charts/charts.js +1 -1
- package/charts/charts.js.map +1 -1
- package/core/app.amd.js +1 -1
- package/core/app.amd.js.map +1 -1
- package/core/app.js +3 -3
- package/dialog/dialog.amd.js +1 -1
- package/dialog/dialog.amd.js.map +1 -1
- package/dialog/dialog.js +2 -2
- package/forms/forms.amd.js +1 -1
- package/forms/forms.amd.js.map +1 -1
- package/forms/forms.js +1 -1
- package/formsExt/formsExt.amd.js +1 -1
- package/formsExt/formsExt.amd.js.map +1 -1
- package/formsExt/formsExt.js +1 -1
- package/layout/layout.amd.js +1 -1
- package/layout/layout.amd.js.map +1 -1
- package/layout/layout.js +1 -1
- package/package.json +2 -2
- package/popup/popup.amd.js +1 -1
- package/popup/popup.amd.js.map +1 -1
- package/popup/popup.js +1 -1
- package/popup/worker.amd.js +1 -1
- package/popup/worker.amd.js.map +1 -1
- package/popup/worker.js +1 -1
- package/project/project.amd.js +1 -1
- package/project/project.amd.js.map +1 -1
- package/project/project.js +461 -460
- package/project/project.js.map +1 -1
- package/schedule/schedule.amd.js +1 -1
- package/schedule/schedule.amd.js.map +1 -1
- package/schedule/schedule.js +8 -6
- package/schedule/schedule.js.map +1 -1
- package/src/api/api/mocker/index.d.ts +1 -6
- package/src/api/api/types/api.d.ts +1 -1
- package/src/components/formsExt/selector2/composables/useAPI.d.ts +406 -0
- package/src/components/formsExt/selector2/composables/useMenu.d.ts +412 -0
- package/src/components/formsExt/selector2/types.d.ts +17 -11
- package/src/components/popup/popup/types.d.ts +6 -1
- package/src/components/project/project.d.ts +1 -1
- package/src/components/project/projectSelector/cache.d.ts +14 -12
- package/src/components/project/projectSelector/submenu/types.d.ts +7 -14
- package/src/components/project/projectSelector/types.d.ts +22 -9
- package/src/components/project/projectSelector/utils.d.ts +8 -4
- package/src/core/core/core.d.ts +2 -3
- package/src/core/core/options.d.ts +26 -19
- package/src/core/core/state.d.ts +3 -4
- package/src/core/plugins/core.d.ts +1 -1
- package/tabsView/tabsView.amd.js +1 -1
- package/tabsView/tabsView.amd.js.map +1 -1
- package/tabsView/tabsView.js +2 -2
- package/tabsView/tabsView.js.map +1 -1
- package/utils/check.js.map +1 -1
- package/utils/clipboard.amd.js +1 -1
- package/utils/clipboard.amd.js.map +1 -1
- package/utils/clipboard.js +1 -1
- package/utils/clipboard.js.map +1 -1
- package/utils/date.amd.js +1 -1
- package/utils/date.amd.js.map +1 -1
- package/utils/date.js +1 -1
- package/utils/device.amd.js +1 -1
- package/utils/device.amd.js.map +1 -1
- package/utils/device.js +1 -1
- package/utils/dom.amd.js.map +1 -1
- package/utils/dom.js.map +1 -1
- package/utils/image.amd.js +1 -1
- package/utils/image.amd.js.map +1 -1
- package/utils/image.js +1 -1
- package/utils/lodash.amd.js +1 -1
- package/utils/lodash.amd.js.map +1 -1
- package/utils/lodash.js +1 -1
- package/utils/price.amd.js +1 -1
- package/utils/price.amd.js.map +1 -1
- package/utils/price.js +1 -1
- package/utils/price.js.map +1 -1
- package/utils/route.js.map +1 -1
- package/utils/scroll.js.map +1 -1
- package/utils/searchers.amd.js +1 -1
- package/utils/searchers.amd.js.map +1 -1
- package/utils/searchers.js +1 -1
- package/utils/searchers.js.map +1 -1
- package/utils/string.amd.js +1 -1
- package/utils/string.amd.js.map +1 -1
- package/utils/string.js +2 -2
- package/utils/string.js.map +1 -1
- package/utils/url.amd.js +1 -1
- package/utils/url.amd.js.map +1 -1
- package/utils/url.js +1 -1
- package/utils/url.js.map +1 -1
- package/.chunks/api-D5wIZnrK.amd.js +0 -2
- package/.chunks/api-D5wIZnrK.amd.js.map +0 -1
- package/.chunks/api-D5wIZnrK.esm.js.map +0 -1
- package/.chunks/app-0qVCkgOO.esm.js.map +0 -1
- package/.chunks/dialog_regionSelectorRegions-BFpuUEJM.amd.js.map +0 -1
- package/.chunks/dialog_regionSelectorRegions-BFpuUEJM.esm.js.map +0 -1
- package/.chunks/forms-BiKUURH4.amd.js +0 -2
- package/.chunks/forms-BiKUURH4.amd.js.map +0 -1
- package/.chunks/forms-BiKUURH4.esm.js.map +0 -1
- package/.chunks/formsExt-Bk_fn1Pg.amd.js +0 -2
- package/.chunks/formsExt-Bk_fn1Pg.amd.js.map +0 -1
- package/.chunks/formsExt-Bk_fn1Pg.esm.js.map +0 -1
- package/.chunks/mocker-C3O-c0Np.amd.js.map +0 -1
- package/.chunks/mocker-C3O-c0Np.esm.js.map +0 -1
- package/.chunks/notice-LFdPfo-5.amd.js +0 -4
- package/.chunks/notice-LFdPfo-5.amd.js.map +0 -1
- package/.chunks/notice-LFdPfo-5.esm.js.map +0 -1
- package/.chunks/popup-DB5g_8kB.amd.js +0 -2
- package/.chunks/popup-DB5g_8kB.amd.js.map +0 -1
- package/.chunks/popup-DB5g_8kB.esm.js.map +0 -1
- package/.chunks/popup-KKfSSrM6.amd.js +0 -2
- package/.chunks/popup-KKfSSrM6.amd.js.map +0 -1
- package/.chunks/popup-KKfSSrM6.esm.js.map +0 -1
- package/.chunks/punycode.es6-BZRFIj88.amd.js +0 -2
- package/.chunks/punycode.es6-BZRFIj88.amd.js.map +0 -1
- package/.chunks/punycode.es6-BZRFIj88.esm.js +0 -105
- package/.chunks/utils-BiOp5DHs.amd.js.map +0 -1
package/api/additional.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"additional.js","names":[],"sources":["../../src/api/api/utils/filters.ts"],"sourcesContent":["import type { components as componentsTagId } from 'topvisor-openapi/src/ts/Tags_2/Types/TagId';\nimport { genFieldFilter } from './field';\n\ntype TagId = componentsTagId['schemas']['Tags_2.Types.TagId'];\ntype TagIdExclude = `-${TagId}`;\n\ntype DataWithModifierOperator<Model> = {\n\t[K in keyof Model]: Model[K] | Model[K][] | Set<Model[K]> | string\n};\n\n/**\n * Модификатор оператора сравнения\n *\n * Используется посредством добавления к строковому значению поля для упрощения синтаксиса указания фильтров\n *\n * @example Поиск вхождения `Иван` в поле `name`\n * genFilters({\n * id: 12345, // без модификатора опертора\n * name: '%:' + 'Иван', // с модификатором опертора\n * });\n */\ntype ModifierOperator = '>=' | '<=' | '!=' | '>' | '<' | '%' | '!%' | '^' | '~' | '!~' | 'null' | '!null';\n\ntype ValueWithModifierOperator = `${ModifierOperator}:${string | number}`;\n\n/**\n * Сгенерировать массив с фильтрами API\n *\n * Ключи - `filedName`, значения - `[ModifierOperator:]fieldValue` / `fieldValues`\n *\n * Значения `undefined` будут пропускаться\n *\n * Додерживает типы:\n *\n * - string, number, boolean - строгое равенство `EQUALS`, если не указан `modifierOperator`\n * - Array - вхождение `IN`\n * - Set<string | number> - вхождение `IN`\n *\n * @see ModifierOperator\n */\nexport const genFilters = <Model extends Api.Ext.Schemas['Model']>(\n\tdataWithModifierOperator: DataWithModifierOperator<Model>,\n): Api.Field.Filter<Model>[] => {\n\tconst filters: Api.Field.Filter<Model>[] = [];\n\n\tObject.keys(dataWithModifierOperator).forEach(_name => {\n\t\tconst name = _name as string & keyof Model;\n\t\tconst value = dataWithModifierOperator[name];\n\t\tif (value === undefined) return;\n\n\t\tlet filter: Api.Field.Filter<Model> | undefined;\n\n\t\tif (name === 'tags_ids' || name === 'tags') {\n\t\t\tpushFilterTagsIds(name, filters, value as any);\n\t\t} else if (typeof value === 'string' || typeof value === 'number' || typeof value === 'boolean') {\n\t\t\tfilter = genFilterPrimitive(name, value);\n\t\t} else if (Array.isArray(value) || value instanceof Set) {\n\t\t\tfilter = genFilterIn(name, value as any);\n\t\t}\n\n\t\tif (filter) {\n\t\t\tfilters.push(filter);\n\t\t}\n\t});\n\n\treturn filters;\n};\n\n/**\n * Получить value и operator из valueWithModifierOperator\n */\nconst extractOperator = (valueWithModifierOperator: ValueWithModifierOperator): {\n\tvalue: any,\n\toperator: Api.Ext.Schemas['FieldOperator']\n} => {\n\tlet value: string | number = valueWithModifierOperator;\n\tlet operator: Api.Field.Filter<any>['operator'] = 'EQUALS';\n\n\tlet modifierOperator: ModifierOperator | undefined;\n\tif (valueWithModifierOperator[1] === ':' || valueWithModifierOperator[2] === ':') {\n\t\t[modifierOperator, value] = valueWithModifierOperator.split(':') as [ModifierOperator, string];\n\t}\n\n\tswitch (modifierOperator) {\n\t\tcase '>':\n\t\t\toperator = 'GREATER_THAN';\n\t\t\tvalue = Number(value);\n\n\t\t\tbreak;\n\t\tcase '>=':\n\t\t\toperator = 'GREATER_THAN_EQUALS';\n\t\t\tvalue = Number(value);\n\n\t\t\tbreak;\n\t\tcase '<':\n\t\t\toperator = 'LESS_THAN';\n\t\t\tvalue = Number(value);\n\n\t\t\tbreak;\n\t\tcase '<=':\n\t\t\toperator = 'LESS_THAN_EQUALS';\n\t\t\tvalue = Number(value);\n\n\t\t\tbreak;\n\t\tcase '!=':\n\t\t\toperator = 'NOT_EQUALS';\n\n\t\t\tif (value.match(/^\\d+$/)) value = Number(value);\n\n\t\t\tbreak;\n\t\tcase '%':\n\t\t\toperator = 'CONTAINS';\n\n\t\t\tbreak;\n\t\tcase '!%':\n\t\t\toperator = 'DOES_NOT_CONTAIN';\n\n\t\t\tbreak;\n\t\tcase '^':\n\t\t\toperator = 'STARTS_WITH';\n\n\t\t\tbreak;\n\t\tcase 'null':\n\t\t\toperator = 'IS_NULL';\n\n\t\t\tbreak;\n\t\tcase '!null':\n\t\t\toperator = 'IS_NOT_NULL';\n\n\t\t\tbreak;\n\t\tcase '~':\n\t\t\toperator = 'REGEXP';\n\n\t\t\tbreak;\n\t\tcase '!~':\n\t\t\toperator = 'NOT_REGEXP';\n\n\t\t\tbreak;\n\t}\n\n\treturn { value, operator };\n};\n\n/**\n * Сгенерировать и добавить API фильтр из списка тегов\n */\nexport const pushFilterTagsIds = <\n\tModel extends Api.Ext.Schemas['Model'] = any,\n\tFieldName extends Api.Field.Name<Model> = Api.Field.Name<Model>\n>(\n\tname: FieldName,\n\tfilters: Api.Field.Filter<Model, FieldName>[],\n\ttagsIds: Array<TagId | TagIdExclude>,\n) => {\n\tconst tagsIncluded: Array<Model[FieldName] & TagId> = [];\n\tconst tagsExcluded: Array<Model[FieldName] & TagId> = [];\n\n\ttagsIds.forEach((tagId) => {\n\t\tif (tagId[0] === '-') {\n\t\t\ttagsExcluded.push(tagId.substring(1) as Model[FieldName] & TagId);\n\t\t} else {\n\t\t\ttagsIncluded.push(tagId as Model[FieldName] & TagId);\n\t\t}\n\t});\n\n\tif (tagsIncluded.length) filters.push(genFieldFilter<Model, FieldName>(name, 'IN', tagsIncluded));\n\tif (tagsExcluded.length) filters.push(genFieldFilter<Model, FieldName>(name, 'NOT_IN', tagsExcluded));\n};\n\n/**\n * Сгенерировать API фильтр из простого значения\n */\nexport const genFilterPrimitive = <\n\tModel extends Api.Ext.Schemas['Model'] = any,\n\tFieldName extends Api.Field.Name<Model> = Api.Field.Name<Model>\n>(\n\tname: FieldName,\n\tvalueWithModifierOperator: number | string | boolean | ValueWithModifierOperator,\n) => {\n\tlet value = valueWithModifierOperator;\n\tlet operator: Api.Field.Filter<any>['operator'] = 'EQUALS';\n\n\tif (typeof valueWithModifierOperator === 'string') {\n\t\t({ value, operator } = extractOperator(valueWithModifierOperator as ValueWithModifierOperator));\n\t}\n\n\t// @deprecated\n\tif (typeof value === 'boolean') {\n\t\tvalue = value ? 1 : 0;\n\t}\n\n\treturn genFieldFilter<Model>(name, operator, [value as any]);\n};\n\n/**\n * Сгенерировать API фильтр IN\n */\nexport const genFilterIn = <\n\tModel extends Api.Ext.Schemas['Model'] = any,\n\tFieldName extends Api.Field.Name<Model> = Api.Field.Name<Model>\n>(\n\tname: FieldName,\n\tvaluesOrSet: Model[FieldName][] | Set<Model[FieldName]>,\n) => {\n\treturn genFieldFilter<Model, FieldName>(name, 'IN', Array.isArray(valuesOrSet) ? valuesOrSet : [...valuesOrSet]);\n};\n"],"mappings":";;AAwCA,IAAa,KACZ,MAC+B;CAC/B,IAAM,IAAqC,CAAC;CAsB5C,OApBA,OAAO,KAAK,CAAwB,
|
|
1
|
+
{"version":3,"file":"additional.js","names":[],"sources":["../../src/api/api/utils/filters.ts"],"sourcesContent":["import type { components as componentsTagId } from 'topvisor-openapi/src/ts/Tags_2/Types/TagId';\nimport { genFieldFilter } from './field';\n\ntype TagId = componentsTagId['schemas']['Tags_2.Types.TagId'];\ntype TagIdExclude = `-${TagId}`;\n\ntype DataWithModifierOperator<Model> = {\n\t[K in keyof Model]: Model[K] | Model[K][] | Set<Model[K]> | string\n};\n\n/**\n * Модификатор оператора сравнения\n *\n * Используется посредством добавления к строковому значению поля для упрощения синтаксиса указания фильтров\n *\n * @example Поиск вхождения `Иван` в поле `name`\n * genFilters({\n * id: 12345, // без модификатора опертора\n * name: '%:' + 'Иван', // с модификатором опертора\n * });\n */\ntype ModifierOperator = '>=' | '<=' | '!=' | '>' | '<' | '%' | '!%' | '^' | '~' | '!~' | 'null' | '!null';\n\ntype ValueWithModifierOperator = `${ModifierOperator}:${string | number}`;\n\n/**\n * Сгенерировать массив с фильтрами API\n *\n * Ключи - `filedName`, значения - `[ModifierOperator:]fieldValue` / `fieldValues`\n *\n * Значения `undefined` будут пропускаться\n *\n * Додерживает типы:\n *\n * - string, number, boolean - строгое равенство `EQUALS`, если не указан `modifierOperator`\n * - Array - вхождение `IN`\n * - Set<string | number> - вхождение `IN`\n *\n * @see ModifierOperator\n */\nexport const genFilters = <Model extends Api.Ext.Schemas['Model']>(\n\tdataWithModifierOperator: DataWithModifierOperator<Model>,\n): Api.Field.Filter<Model>[] => {\n\tconst filters: Api.Field.Filter<Model>[] = [];\n\n\tObject.keys(dataWithModifierOperator).forEach(_name => {\n\t\tconst name = _name as string & keyof Model;\n\t\tconst value = dataWithModifierOperator[name];\n\t\tif (value === undefined) return;\n\n\t\tlet filter: Api.Field.Filter<Model> | undefined;\n\n\t\tif (name === 'tags_ids' || name === 'tags') {\n\t\t\tpushFilterTagsIds(name, filters, value as any);\n\t\t} else if (typeof value === 'string' || typeof value === 'number' || typeof value === 'boolean') {\n\t\t\tfilter = genFilterPrimitive(name, value);\n\t\t} else if (Array.isArray(value) || value instanceof Set) {\n\t\t\tfilter = genFilterIn(name, value as any);\n\t\t}\n\n\t\tif (filter) {\n\t\t\tfilters.push(filter);\n\t\t}\n\t});\n\n\treturn filters;\n};\n\n/**\n * Получить value и operator из valueWithModifierOperator\n */\nconst extractOperator = (valueWithModifierOperator: ValueWithModifierOperator): {\n\tvalue: any,\n\toperator: Api.Ext.Schemas['FieldOperator']\n} => {\n\tlet value: string | number = valueWithModifierOperator;\n\tlet operator: Api.Field.Filter<any>['operator'] = 'EQUALS';\n\n\tlet modifierOperator: ModifierOperator | undefined;\n\tif (valueWithModifierOperator[1] === ':' || valueWithModifierOperator[2] === ':') {\n\t\t[modifierOperator, value] = valueWithModifierOperator.split(':') as [ModifierOperator, string];\n\t}\n\n\tswitch (modifierOperator) {\n\t\tcase '>':\n\t\t\toperator = 'GREATER_THAN';\n\t\t\tvalue = Number(value);\n\n\t\t\tbreak;\n\t\tcase '>=':\n\t\t\toperator = 'GREATER_THAN_EQUALS';\n\t\t\tvalue = Number(value);\n\n\t\t\tbreak;\n\t\tcase '<':\n\t\t\toperator = 'LESS_THAN';\n\t\t\tvalue = Number(value);\n\n\t\t\tbreak;\n\t\tcase '<=':\n\t\t\toperator = 'LESS_THAN_EQUALS';\n\t\t\tvalue = Number(value);\n\n\t\t\tbreak;\n\t\tcase '!=':\n\t\t\toperator = 'NOT_EQUALS';\n\n\t\t\tif (value.match(/^\\d+$/)) value = Number(value);\n\n\t\t\tbreak;\n\t\tcase '%':\n\t\t\toperator = 'CONTAINS';\n\n\t\t\tbreak;\n\t\tcase '!%':\n\t\t\toperator = 'DOES_NOT_CONTAIN';\n\n\t\t\tbreak;\n\t\tcase '^':\n\t\t\toperator = 'STARTS_WITH';\n\n\t\t\tbreak;\n\t\tcase 'null':\n\t\t\toperator = 'IS_NULL';\n\n\t\t\tbreak;\n\t\tcase '!null':\n\t\t\toperator = 'IS_NOT_NULL';\n\n\t\t\tbreak;\n\t\tcase '~':\n\t\t\toperator = 'REGEXP';\n\n\t\t\tbreak;\n\t\tcase '!~':\n\t\t\toperator = 'NOT_REGEXP';\n\n\t\t\tbreak;\n\t}\n\n\treturn { value, operator };\n};\n\n/**\n * Сгенерировать и добавить API фильтр из списка тегов\n */\nexport const pushFilterTagsIds = <\n\tModel extends Api.Ext.Schemas['Model'] = any,\n\tFieldName extends Api.Field.Name<Model> = Api.Field.Name<Model>\n>(\n\tname: FieldName,\n\tfilters: Api.Field.Filter<Model, FieldName>[],\n\ttagsIds: Array<TagId | TagIdExclude>,\n) => {\n\tconst tagsIncluded: Array<Model[FieldName] & TagId> = [];\n\tconst tagsExcluded: Array<Model[FieldName] & TagId> = [];\n\n\ttagsIds.forEach((tagId) => {\n\t\tif (tagId[0] === '-') {\n\t\t\ttagsExcluded.push(tagId.substring(1) as Model[FieldName] & TagId);\n\t\t} else {\n\t\t\ttagsIncluded.push(tagId as Model[FieldName] & TagId);\n\t\t}\n\t});\n\n\tif (tagsIncluded.length) filters.push(genFieldFilter<Model, FieldName>(name, 'IN', tagsIncluded));\n\tif (tagsExcluded.length) filters.push(genFieldFilter<Model, FieldName>(name, 'NOT_IN', tagsExcluded));\n};\n\n/**\n * Сгенерировать API фильтр из простого значения\n */\nexport const genFilterPrimitive = <\n\tModel extends Api.Ext.Schemas['Model'] = any,\n\tFieldName extends Api.Field.Name<Model> = Api.Field.Name<Model>\n>(\n\tname: FieldName,\n\tvalueWithModifierOperator: number | string | boolean | ValueWithModifierOperator,\n) => {\n\tlet value = valueWithModifierOperator;\n\tlet operator: Api.Field.Filter<any>['operator'] = 'EQUALS';\n\n\tif (typeof valueWithModifierOperator === 'string') {\n\t\t({ value, operator } = extractOperator(valueWithModifierOperator as ValueWithModifierOperator));\n\t}\n\n\t// @deprecated\n\tif (typeof value === 'boolean') {\n\t\tvalue = value ? 1 : 0;\n\t}\n\n\treturn genFieldFilter<Model>(name, operator, [value as any]);\n};\n\n/**\n * Сгенерировать API фильтр IN\n */\nexport const genFilterIn = <\n\tModel extends Api.Ext.Schemas['Model'] = any,\n\tFieldName extends Api.Field.Name<Model> = Api.Field.Name<Model>\n>(\n\tname: FieldName,\n\tvaluesOrSet: Model[FieldName][] | Set<Model[FieldName]>,\n) => {\n\treturn genFieldFilter<Model, FieldName>(name, 'IN', Array.isArray(valuesOrSet) ? valuesOrSet : [...valuesOrSet]);\n};\n"],"mappings":";;AAwCA,IAAa,KACZ,MAC+B;CAC/B,IAAM,IAAqC,CAAC;CAsB5C,OApBA,OAAO,KAAK,CAAwB,CAAC,CAAC,SAAQ,MAAS;EACtD,IAAM,IAAO,GACP,IAAQ,EAAyB;EACvC,IAAI,MAAU,KAAA,GAAW;EAEzB,IAAI;EAUJ,AARI,MAAS,cAAc,MAAS,SACnC,EAAkB,GAAM,GAAS,CAAY,IACnC,OAAO,KAAU,YAAY,OAAO,KAAU,YAAY,OAAO,KAAU,YACrF,IAAS,EAAmB,GAAM,CAAK,KAC7B,MAAM,QAAQ,CAAK,KAAK,aAAiB,SACnD,IAAS,EAAY,GAAM,CAAY,IAGpC,KACH,EAAQ,KAAK,CAAM;CAErB,CAAC,GAEM;AACR,GAKM,KAAmB,MAGpB;CACJ,IAAI,IAAyB,GACzB,IAA8C,UAE9C;CAKJ,SAJI,EAA0B,OAAO,OAAO,EAA0B,OAAO,SAC5E,CAAC,GAAkB,KAAS,EAA0B,MAAM,GAAG,IAGxD,GAAR;EACC,KAAK;GAEJ,AADA,IAAW,gBACX,IAAQ,OAAO,CAAK;GAEpB;EACD,KAAK;GAEJ,AADA,IAAW,uBACX,IAAQ,OAAO,CAAK;GAEpB;EACD,KAAK;GAEJ,AADA,IAAW,aACX,IAAQ,OAAO,CAAK;GAEpB;EACD,KAAK;GAEJ,AADA,IAAW,oBACX,IAAQ,OAAO,CAAK;GAEpB;EACD,KAAK;GAGJ,AAFA,IAAW,cAEP,EAAM,MAAM,OAAO,MAAG,IAAQ,OAAO,CAAK;GAE9C;EACD,KAAK;GACJ,IAAW;GAEX;EACD,KAAK;GACJ,IAAW;GAEX;EACD,KAAK;GACJ,IAAW;GAEX;EACD,KAAK;GACJ,IAAW;GAEX;EACD,KAAK;GACJ,IAAW;GAEX;EACD,KAAK;GACJ,IAAW;GAEX;EACD,KAAK;GACJ,IAAW;GAEX;CACF;CAEA,OAAO;EAAE;EAAO;CAAS;AAC1B,GAKa,KAIZ,GACA,GACA,MACI;CACJ,IAAM,IAAgD,CAAC,GACjD,IAAgD,CAAC;CAWvD,AATA,EAAQ,SAAS,MAAU;EAC1B,AAAI,EAAM,OAAO,MAChB,EAAa,KAAK,EAAM,UAAU,CAAC,CAA6B,IAEhE,EAAa,KAAK,CAAiC;CAErD,CAAC,GAEG,EAAa,UAAQ,EAAQ,KAAK,EAAiC,GAAM,MAAM,CAAY,CAAC,GAC5F,EAAa,UAAQ,EAAQ,KAAK,EAAiC,GAAM,UAAU,CAAY,CAAC;AACrG,GAKa,KAIZ,GACA,MACI;CACJ,IAAI,IAAQ,GACR,IAA8C;CAWlD,OATI,OAAO,KAA8B,aACvC,0BAAsB,EAAgB,CAAsD,IAI1F,OAAO,KAAU,cACpB,IAAQ,OAGF,EAAsB,GAAM,GAAU,CAAC,CAAY,CAAC;AAC5D,GAKa,KAIZ,GACA,MAEO,EAAiC,GAAM,MAAM,MAAM,QAAQ,CAAW,IAAI,IAAc,CAAC,GAAG,CAAW,CAAC"}
|
package/api/index.amd.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
define([`require`,`exports`,`../.chunks/api-
|
|
1
|
+
define([`require`,`exports`,`../.chunks/api-DZQlrC2R.amd`,`../.chunks/field-DEusYVqS.amd`],function(e,t,n,r){"use strict";if(i===void 0)var i=window.Vue;Object.defineProperty(t,"__esModule",{value:!0}),t.postInWindow=t.isPublicAPI=t.getBaseDomainUrl=t.genFieldOrder=t.genFieldFilter=t.genExtRes=t.dataToForm=t.createClient=void 0,Object.defineProperty(t,"getBaseDomainUrl",{enumerable:!0,get:function(){return n.a}}),Object.defineProperty(t,"genExtRes",{enumerable:!0,get:function(){return n.i}}),Object.defineProperty(t,"dataToForm",{enumerable:!0,get:function(){return n.n}}),Object.defineProperty(t,"isPublicAPI",{enumerable:!0,get:function(){return n.o}}),Object.defineProperty(t,"postInWindow",{enumerable:!0,get:function(){return n.r}}),Object.defineProperty(t,"createClient",{enumerable:!0,get:function(){return n.t}}),Object.defineProperty(t,"genFieldOrder",{enumerable:!0,get:function(){return r.n}}),Object.defineProperty(t,"genFieldFilter",{enumerable:!0,get:function(){return r.t}})});
|
|
2
2
|
//# sourceMappingURL=index.amd.js.map
|
package/api/index.amd.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["api/index.js"],"names":["vue","exports","
|
|
1
|
+
{"version":3,"sources":["api/index.js"],"names":["vue","exports","api_DZQlrC2R_esm_js_1","field_DEusYVqS_esm_js_1"],"mappings":"AAAA,OAAO,CAAC,UAAW,UAAW,8BAAkC,+BAAkC,EAAG,SAAU,EAAS,EAAS,EAAuB,EAAyB,CAC7K,aAAA,GAAAA,IAAA,OAAA,IAAAA,EAAA,OAAA,IACA,OAAO,eAAeC,EAAS,aAAc,CAAE,MAAO,EAAK,CAAC,EAC5D,EAAQ,aAAe,EAAQ,YAAc,EAAQ,iBAAmB,EAAQ,cAAgB,EAAQ,eAAiB,EAAQ,UAAY,EAAQ,WAAa,EAAQ,aAAe,IAAK,GAC9L,OAAO,eAAeA,EAAS,mBAAoB,CAAE,WAAY,GAAM,IAAK,UAAY,CAAE,OAAOC,EAAsB,CAAG,CAAE,CAAC,EAC7H,OAAO,eAAeD,EAAS,YAAa,CAAE,WAAY,GAAM,IAAK,UAAY,CAAE,OAAOC,EAAsB,CAAG,CAAE,CAAC,EACtH,OAAO,eAAeD,EAAS,aAAc,CAAE,WAAY,GAAM,IAAK,UAAY,CAAE,OAAOC,EAAsB,CAAG,CAAE,CAAC,EACvH,OAAO,eAAeD,EAAS,cAAe,CAAE,WAAY,GAAM,IAAK,UAAY,CAAE,OAAOC,EAAsB,CAAG,CAAE,CAAC,EACxH,OAAO,eAAeD,EAAS,eAAgB,CAAE,WAAY,GAAM,IAAK,UAAY,CAAE,OAAOC,EAAsB,CAAG,CAAE,CAAC,EACzH,OAAO,eAAeD,EAAS,eAAgB,CAAE,WAAY,GAAM,IAAK,UAAY,CAAE,OAAOC,EAAsB,CAAG,CAAE,CAAC,EACzH,OAAO,eAAeD,EAAS,gBAAiB,CAAE,WAAY,GAAM,IAAK,UAAY,CAAE,OAAOE,EAAwB,CAAG,CAAE,CAAC,EAC5H,OAAO,eAAeF,EAAS,iBAAkB,CAAE,WAAY,GAAM,IAAK,UAAY,CAAE,OAAOE,EAAwB,CAAG,CAAE,CAAC,CACjI,CAAC","sourcesContent":["define([\"require\", \"exports\", \"../.chunks/api-DZQlrC2R.esm.js\", \"../.chunks/field-DEusYVqS.esm.js\"], function (require, exports, api_DZQlrC2R_esm_js_1, field_DEusYVqS_esm_js_1) {\n \"use strict\";\n Object.defineProperty(exports, \"__esModule\", { value: true });\n exports.postInWindow = exports.isPublicAPI = exports.getBaseDomainUrl = exports.genFieldOrder = exports.genFieldFilter = exports.genExtRes = exports.dataToForm = exports.createClient = void 0;\n Object.defineProperty(exports, \"getBaseDomainUrl\", { enumerable: true, get: function () { return api_DZQlrC2R_esm_js_1.a; } });\n Object.defineProperty(exports, \"genExtRes\", { enumerable: true, get: function () { return api_DZQlrC2R_esm_js_1.i; } });\n Object.defineProperty(exports, \"dataToForm\", { enumerable: true, get: function () { return api_DZQlrC2R_esm_js_1.n; } });\n Object.defineProperty(exports, \"isPublicAPI\", { enumerable: true, get: function () { return api_DZQlrC2R_esm_js_1.o; } });\n Object.defineProperty(exports, \"postInWindow\", { enumerable: true, get: function () { return api_DZQlrC2R_esm_js_1.r; } });\n Object.defineProperty(exports, \"createClient\", { enumerable: true, get: function () { return api_DZQlrC2R_esm_js_1.t; } });\n Object.defineProperty(exports, \"genFieldOrder\", { enumerable: true, get: function () { return field_DEusYVqS_esm_js_1.n; } });\n Object.defineProperty(exports, \"genFieldFilter\", { enumerable: true, get: function () { return field_DEusYVqS_esm_js_1.t; } });\n});\n"]}
|
package/api/index.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { a as e, i as t, n, o as r, r as i, t as a } from "../.chunks/api-
|
|
1
|
+
import { a as e, i as t, n, o as r, r as i, t as a } from "../.chunks/api-DZQlrC2R.esm.js";
|
|
2
2
|
import { n as o, t as s } from "../.chunks/field-DEusYVqS.esm.js";
|
|
3
3
|
export { a as createClient, n as dataToForm, t as genExtRes, s as genFieldFilter, o as genFieldOrder, e as getBaseDomainUrl, r as isPublicAPI, i as postInWindow };
|
package/assets/formsExt.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
.top-menu{--scroll-thumb-color:var(--color-line-1);--scroll-thumb-color-hover:var(--color-line-2);--scroll-thumb-color-active:var(--color-line-3);align-items:flex-start;gap:var(--top-gap-2);scrollbar-width:none;overscroll-behavior-x:contain;max-width:100%;display:flex;overflow-x:auto}.top-menu::-webkit-scrollbar{display:none}.top-menu .top-menu_item{--top-button-color:var(--color-text-2);flex-shrink:0;min-width:0;max-width:200px;margin:0;outline-offset:-2px!important}.top-menu .top-menu_item[data-top-icon]{--top-icon-color:var(--color-text-2)}.top-menu_selectAll{background:var(--color-layout-front-1);border-left:1px solid var(--color-line-1);padding-left:var(--top-padding-1);box-shadow:var(--color-layout-front-1) var(--top-padding-2) 0px;position:sticky;right:0}.top-menu.top-style_default .top-menu_item{--top-forms-radius:0;--top-forms-border-color:transparent;--top-forms-border-width:2px;filter:none;box-shadow:none;border:none;border-bottom:var(--top-forms-border-width) solid var(--top-forms-border-color);background:0 0}.top-style_default>.top-menu_item>[data-top-badge]{margin-top:0}.top-menu.top-style_default .top-menu_item:hover{--top-icon-color:var(--color-text-1);--top-button-color:var(--color-text-1);--top-forms-border-color:var(--color-line-2)}.top-menu.top-style_default .top-menu_item:active,.top-menu.top-style_default .top-menu_item.top-active{--top-icon-color:var(--color-text-primary);--top-button-color:var(--color-text-1);--top-forms-border-color:var(--color-line-primary-1)}.top-menu.top-style_default .top-menu_selectAll{padding-left:var(--top-padding-2)}.top-menu.top-style_bar{border-radius:var(--top-radius-3);border:1px solid var(--color-line-2);padding:var(--top-padding-1);gap:3px}.top-menu.top-style_bar .top-menu_item{--top-button-background-color-hover:var(--color-layer-1);--top-button-background-color-active:var(--color-layer-2);--top-button-background-color-selected:var(--color-layer-primary-1);position:relative}.top-menu.top-style_bar .top-menu_item:hover{--top-icon-color:var(--color-text-1);--top-button-color:var(--color-text-1)}.top-menu.top-style_bar .top-menu_item.top-active{--top-icon-color:var(--color-text-primary);--top-button-color:var(--color-text-primary)}.top-menu.top-style_bar .top-menu_item:not(:first-child):not(.top-active):not(:hover):after{content:"";background:var(--color-line-1-opacity);width:1px;height:60%;display:block;position:absolute;left:-2px}.top-menu.top-style_bar .top-menu_item.top-active+.top-menu_item:after,.top-menu.top-style_bar .top-menu_item:hover+.top-menu_item:after{content:none!important}.top-selector2_itemMulti{box-sizing:border-box;padding-left:var(--top-padding-2);border-radius:var(--top-radius-1,4px);border:1px solid var(--color-line-primary-1);background:var(--color-layer-primary-2);max-width:100%;min-height:22px;color:var(--color-text-1);align-items:center;gap:var(--top-gap-1);flex-grow:0;display:inline-flex}.top-selector2_itemMultiDelete{--top-icon-size:14px;--top-icon-width:18px;--top-icon-color:var(--color-text-1);cursor:pointer;justify-content:center;align-items:center;height:100%;display:flex}.top-selector2_itemMultiDelete:hover{background:var(--color-layer-primary-2)}@media screen and (min-width:900px){.top-selector2.top-active .top-selector2_itemMultiDelete{z-index:calc(var(--top-popup-z-index) + 1)}}.top-selector2{width:180px}.top-selector2::placeholder,.top-selector2_placeholder{color:var(--color-text-2)}.top-selector2_placeholder{padding-left:var(--top-padding-1)}.top-selector2.top-as-input{padding:var(--top-padding-1) var(--top-forms-padding)}.top-selector2.top-selector2-multiselect{width:auto;padding:var(--top-padding-1);flex-grow:1}.top-selector2.top-active{--top-forms-border-color:var(--top-forms-border-color-hover)}.top-selector2_searchWidget{gap:var(--top-gap-2);display:flex}.top-selector2_activeItems{gap:var(--top-padding-1);flex-wrap:wrap;max-width:100%;display:flex}.top-selector2_activeName{font-size:var(--top-font-size);white-space:nowrap}.top-changer-selector{width:auto;padding:var(--top-padding-1);margin:calc(0px - var(--top-padding-1));transform:translate(0)}.top-selector2.top-button{justify-content:start}.top-selector2.top-input_input~.top-changer-selector{transform:translate(-52px)}.top-selector2.top-as-selector{padding-right:calc(var(--top-selector-arrow-width) + var(--top-padding-2))}.top-editArea{--top-editArea-bottom:env(keyboard-inset-height,0px);--top-editArea-offset-bottom:0px;flex-direction:column;gap:6px;display:flex}.top-editArea_caption{font-size:12px}.top-editArea_form{flex-direction:column}.top-textarea{width:100%}.top-editArea_element.top-textarea_textarea{--top-forms-border-width:0px;outline:none;animation:none}.top-editArea_footer{padding:var(--top-forms-padding);justify-content:flex-end;align-self:flex-end;gap:var(--top-forms-padding);min-height:32px;display:flex}.top-editArea-attachedToKeyboard{background:var(--top-forms-background-color);bottom:calc(var(--top-editArea-offset-bottom) + var(--top-editArea-bottom));z-index:2;transition:bottom var(--transition-fast);gap:0;position:fixed;left:0;right:0}.top-editArea-attachedToKeyboard .top-editArea_form{border:none;border-top:1px solid var(--top-forms-border-color);border-radius:0}.top-editArea-attachedToKeyboard .top-editArea_title{cursor:pointer;border-top:1px solid var(--color-line-2-opacity);padding:var(--top-forms-padding)}.top-editArea-attachedToKeyboard .top-editArea_footer>[data-top-icon]{border-radius:100%}@media screen and (max-width:900px){.top-editArea_form{flex-direction:row}}.top-editInput{align-items:flex-end;gap:var(--top-gap-1);flex-grow:1;width:220px;display:flex}.top-editInput .top-input{width:unset;flex-grow:1}.top-optionGroup{-webkit-user-select:none;user-select:none;box-sizing:border-box;background-color:var(--color-layout-middle);height:var(--top-forms-base-height);border-radius:8px;align-items:flex-start;gap:2px;padding:2px;display:flex}.top-optionGroup_item{cursor:pointer;box-sizing:border-box;height:calc(var(--top-forms-base-height) - 4px);padding:1px var(--top-padding-2);color:var(--color-text-2);white-space:nowrap;justify-content:center;align-items:center;gap:var(--top-gap-1);border-radius:6px;flex-grow:1;font-weight:400;display:flex}.top-optionGroup_item:hover{background-color:var(--color-layout-front-1);box-shadow:0 4px 32px #0409541a,0 0 4px #04095414}.top-optionGroup_item-selected{color:var(--color-text-1);background-color:var(--color-bg-lightning-1);box-shadow:0 4px 32px #0409541a,0 0 4px #04095414}.top-optionGroup_item>.top-forms-optionLabel{flex-grow:0}.top-optionGroup-showIndicator_0>.top-optionGroup_item{justify-content:center}.top-optionGroup-showIndicator_0>.top-optionGroup_item:has(:focus-visible){outline:2px solid var(--color-bg-primary-2);outline-offset:-1px}.top-optionGroup-showIndicator_1>.top-optionGroup_item{justify-content:flex-start;padding:1px 3px}.top-optionGroup-showIndicator_0>.top-optionGroup_item>.top-forms-option{opacity:0;width:0;height:0;position:absolute}.top-optionGroup_item>.top-forms-option{order:-1}.top-info{--top-icon-width:var(--top-icon-size);border-radius:var(--top-forms-radius);box-sizing:border-box;min-height:var(--top-forms-base-height);padding:var(--top-padding-1) var(--top-padding-2);justify-content:space-between;align-items:center;gap:var(--top-gap-2);flex-grow:5;display:flex}.top-info_text{flex-grow:1}.top-info_value{font-weight:700}.top-info.top-size_default{border-radius:var(--top-radius-3);padding:var(--top-padding-4)}.top-info-styling_default{--top-icon-color:var(--color-text-2);background:var(--color-layer-1)}.top-info-styling_info{--top-icon-color:var(--color-text-primary);background:var(--color-layer-primary-1)}.top-info-styling_warning{--top-icon-color:var(--color-text-warning);background:var(--color-layer-warning-1)}.top-info-styling_negative{--top-icon-color:var(--color-text-negative);background:var(--color-layer-negative-1)}.top-policy{box-sizing:border-box;box-shadow:var(--top-shadow-b);border-radius:var(--top-radius-4);background:var(--color-bg-lightning-1);width:600px;padding:var(--top-padding-4);right:var(--top-gap-10);bottom:var(--top-gap-10);gap:var(--top-gap-4);z-index:10000;flex-direction:column;display:flex;position:fixed}.top-policy_title{font-size:24px;font-weight:700}.top-policy_description{font-size:14px}@media screen and (max-width:900px){.top-policy{width:100%;right:0;bottom:calc(var(--top-gap-5) + var(--toolbar-height,0px))}}
|
|
1
|
+
.top-menu{--scroll-thumb-color:var(--color-line-1);--scroll-thumb-color-hover:var(--color-line-2);--scroll-thumb-color-active:var(--color-line-3);background:var(--content-background-color);align-items:flex-start;gap:var(--top-gap-2);scrollbar-width:none;overscroll-behavior-x:contain;max-width:100%;display:flex;overflow-x:auto}.top-menu::-webkit-scrollbar{display:none}.top-menu .top-menu_item{--top-button-color:var(--color-text-2);flex-shrink:0;min-width:0;max-width:200px;margin:0;outline-offset:-2px!important}.top-menu .top-menu_item[data-top-icon]{--top-icon-color:var(--color-text-2)}.top-menu_selectAll{background:var(--color-layout-front-1);border-left:1px solid var(--color-line-1);padding-left:var(--top-padding-1);box-shadow:var(--color-layout-front-1) var(--top-padding-2) 0px;position:sticky;right:0}.top-menu.top-style_default .top-menu_item{--top-forms-radius:0;--top-forms-border-color:transparent;--top-forms-border-width:2px;filter:none;box-shadow:none;border:none;border-bottom:var(--top-forms-border-width) solid var(--top-forms-border-color);background:0 0}.top-style_default>.top-menu_item>[data-top-badge]{margin-top:0}.top-menu.top-style_default .top-menu_item:hover{--top-icon-color:var(--color-text-1);--top-button-color:var(--color-text-1);--top-forms-border-color:var(--color-line-2)}.top-menu.top-style_default .top-menu_item:active,.top-menu.top-style_default .top-menu_item.top-active{--top-icon-color:var(--color-text-primary);--top-button-color:var(--color-text-1);--top-forms-border-color:var(--color-line-primary-1)}.top-menu.top-style_default .top-menu_selectAll{padding-left:var(--top-padding-2)}.top-menu.top-style_bar{border-radius:var(--top-radius-3);border:1px solid var(--color-line-2);padding:var(--top-padding-1);gap:3px}.top-menu.top-style_bar .top-menu_item{--top-button-background-color-hover:var(--color-layer-1);--top-button-background-color-active:var(--color-layer-2);--top-button-background-color-selected:var(--color-layer-primary-1);position:relative}.top-menu.top-style_bar .top-menu_item:hover{--top-icon-color:var(--color-text-1);--top-button-color:var(--color-text-1)}.top-menu.top-style_bar .top-menu_item.top-active{--top-icon-color:var(--color-text-primary);--top-button-color:var(--color-text-primary)}.top-menu.top-style_bar .top-menu_item:not(:first-child):not(.top-active):not(:hover):after{content:"";background:var(--color-line-1-opacity);width:1px;height:60%;display:block;position:absolute;left:-2px}.top-menu.top-style_bar .top-menu_item.top-active+.top-menu_item:after,.top-menu.top-style_bar .top-menu_item:hover+.top-menu_item:after{content:none!important}.top-selector2_itemMulti{box-sizing:border-box;padding-left:var(--top-padding-2);border-radius:var(--top-radius-1,4px);border:1px solid var(--color-line-primary-1);background:var(--color-layer-primary-2);max-width:100%;min-height:22px;color:var(--color-text-1);align-items:center;gap:var(--top-gap-1);flex-grow:0;display:inline-flex}.top-selector2_itemMultiDelete{--top-icon-size:14px;--top-icon-width:18px;--top-icon-color:var(--color-text-1);cursor:pointer;justify-content:center;align-items:center;height:100%;display:flex}.top-selector2_itemMultiDelete:hover{background:var(--color-layer-primary-2)}@media screen and (min-width:900px){.top-selector2.top-active .top-selector2_itemMultiDelete{z-index:calc(var(--top-popup-z-index) + 1)}}.top-selector2{width:180px}.top-selector2::placeholder,.top-selector2_placeholder{color:var(--color-text-2)}.top-selector2_placeholder{padding-left:var(--top-padding-1)}.top-selector2.top-as-input{padding:var(--top-padding-1) var(--top-forms-padding)}.top-selector2.top-selector2-multiselect{width:auto;padding:var(--top-padding-1);flex-grow:1}.top-selector2.top-active{--top-forms-border-color:var(--top-forms-border-color-hover)}.top-selector2_searchWidget{gap:var(--top-gap-2);display:flex}.top-selector2_activeItems{gap:var(--top-padding-1);flex-wrap:wrap;max-width:100%;display:flex}.top-selector2_activeName{font-size:var(--top-font-size);white-space:nowrap}.top-changer-selector{width:auto;padding:var(--top-padding-1);margin:calc(0px - var(--top-padding-1));transform:translate(0)}.top-selector2.top-button{justify-content:start}.top-selector2.top-input_input~.top-changer-selector{transform:translate(-52px)}.top-selector2.top-as-selector{padding-right:calc(var(--top-selector-arrow-width) + var(--top-padding-2))}.top-editArea{--top-editArea-bottom:env(keyboard-inset-height,0px);--top-editArea-offset-bottom:0px;flex-direction:column;gap:6px;display:flex}.top-editArea_caption{font-size:12px}.top-editArea_form{flex-direction:column}.top-textarea{width:100%}.top-editArea_element.top-textarea_textarea{--top-forms-border-width:0px;outline:none;animation:none}.top-editArea_footer{padding:var(--top-forms-padding);justify-content:flex-end;align-self:flex-end;gap:var(--top-forms-padding);min-height:32px;display:flex}.top-editArea-attachedToKeyboard{background:var(--top-forms-background-color);bottom:calc(var(--top-editArea-offset-bottom) + var(--top-editArea-bottom));z-index:2;transition:bottom var(--transition-fast);gap:0;position:fixed;left:0;right:0}.top-editArea-attachedToKeyboard .top-editArea_form{border:none;border-top:1px solid var(--top-forms-border-color);border-radius:0}.top-editArea-attachedToKeyboard .top-editArea_title{cursor:pointer;border-top:1px solid var(--color-line-2-opacity);padding:var(--top-forms-padding)}.top-editArea-attachedToKeyboard .top-editArea_footer>[data-top-icon]{border-radius:100%}@media screen and (max-width:900px){.top-editArea_form{flex-direction:row}}.top-editInput{align-items:flex-end;gap:var(--top-gap-1);flex-grow:1;width:220px;display:flex}.top-editInput .top-input{width:unset;flex-grow:1}.top-optionGroup{-webkit-user-select:none;user-select:none;box-sizing:border-box;background-color:var(--color-layout-middle);height:var(--top-forms-base-height);border-radius:8px;align-items:flex-start;gap:2px;padding:2px;display:flex}.top-optionGroup_item{cursor:pointer;box-sizing:border-box;height:calc(var(--top-forms-base-height) - 4px);padding:1px var(--top-padding-2);color:var(--color-text-2);white-space:nowrap;justify-content:center;align-items:center;gap:var(--top-gap-1);border-radius:6px;flex-grow:1;font-weight:400;display:flex}.top-optionGroup_item:hover{background-color:var(--color-layout-front-1);box-shadow:0 4px 32px #0409541a,0 0 4px #04095414}.top-optionGroup_item-selected{color:var(--color-text-1);background-color:var(--color-bg-lightning-1);box-shadow:0 4px 32px #0409541a,0 0 4px #04095414}.top-optionGroup_item>.top-forms-optionLabel{flex-grow:0}.top-optionGroup-showIndicator_0>.top-optionGroup_item{justify-content:center}.top-optionGroup-showIndicator_0>.top-optionGroup_item:has(:focus-visible){outline:2px solid var(--color-bg-primary-2);outline-offset:-1px}.top-optionGroup-showIndicator_1>.top-optionGroup_item{justify-content:flex-start;padding:1px 3px}.top-optionGroup-showIndicator_0>.top-optionGroup_item>.top-forms-option{opacity:0;width:0;height:0;position:absolute}.top-optionGroup_item>.top-forms-option{order:-1}.top-info{--top-icon-width:var(--top-icon-size);border-radius:var(--top-forms-radius);box-sizing:border-box;min-height:var(--top-forms-base-height);padding:var(--top-padding-1) var(--top-padding-2);justify-content:space-between;align-items:center;gap:var(--top-gap-2);flex-grow:5;display:flex}.top-info_text{flex-grow:1}.top-info_value{font-weight:700}.top-info.top-size_default{border-radius:var(--top-radius-3);padding:var(--top-padding-4)}.top-info-styling_default{--top-icon-color:var(--color-text-2);background:var(--color-layer-1)}.top-info-styling_info{--top-icon-color:var(--color-text-primary);background:var(--color-layer-primary-1)}.top-info-styling_warning{--top-icon-color:var(--color-text-warning);background:var(--color-layer-warning-1)}.top-info-styling_negative{--top-icon-color:var(--color-text-negative);background:var(--color-layer-negative-1)}.top-policy{box-sizing:border-box;box-shadow:var(--top-shadow-b);border-radius:var(--top-radius-4);background:var(--color-bg-lightning-1);width:600px;padding:var(--top-padding-4);right:var(--top-gap-10);bottom:var(--top-gap-10);gap:var(--top-gap-4);z-index:10000;flex-direction:column;display:flex;position:fixed}.top-policy_title{font-size:24px;font-weight:700}.top-policy_description{font-size:14px}@media screen and (max-width:900px){.top-policy{width:100%;right:0;bottom:calc(var(--top-gap-5) + var(--toolbar-height,0px))}}
|
package/assets/project.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
.top-competitorSelector_opener.top-button{width:100%}.top-select-searcher_key[data-value="0"]:after,.top-select-searcher_key[data-value="20"]:after,.top-select-searcher_key[data-value="21"]:after{color:red}.top-select-searcher_key[data-value="1"]:after{color:var(--color-bg-primary-2)}.top-select-searcher_key[data-value="2"]:after{color:#005ff9}.top-select-searcher_key[data-value="3"]:after{color:#01509b}.top-select-searcher_key[data-value="4"]:after{color:red}.top-select-searcher_key[data-value="5"]:after{color:#008373}.top-select-searcher_key[data-value="6"]:after{color:#4800b5}.top-select-searcher_key[data-value="7"]:after{color:#c00}.top-select-searcher_key[data-value="8"]:after{color:#1badf8}.top-select-searcher_key[data-value="9"]:after{color:#00ceff}.top-regionSelector{vertical-align:middle;width:340px;display:inline-flex}.top-regionSelector>.top-select{flex-grow:1}.top-regionSelector>.top-select:focus-within{z-index:4}.top-regionSelector>.top-select>.top-select_select:hover,.top-regionSelector>.top-select>.top-select_select.top-error{z-index:1}.top-regionSelector>.top-select-searcher_key{width:140px;max-width:160px;margin-right:-1px}.top-regionSelector>.top-select-region>select{border-top-left-radius:0;border-bottom-left-radius:0}.top-regionSelector>.top-select-region{--top-icon-size:20px;--top-icon-color:var(--color-text-primary);--top-icon2-size:20px;--top-icon2-color:var(--color-text-primary)}.top-regionSelector>.top-select-region[data-top-icon][data-top-icon2]{--top-icon2-size:16px}.top-regionSelector>.top-select-region[data-top-icon][data-top-icon2]:after{text-indent:-4px}.top-regionSelector>[name=compare]{border-top-left-radius:0;border-bottom-left-radius:0;flex-grow:1}.top-regionSelector>[name=compare]:after{content:"(" attr(data-count-compare-regions-indexes) ")";margin:0 0 0 6px}.top-regionSelector:not(.top-regionSelector-onlySearcher)>.top-select-searcher_key>select{border-top-right-radius:0;border-bottom-right-radius:0;margin-right:0}.top-regionSelector:not(.top-regionSelector-onlySearcher)>.top-select-searcher_key[data-value="-1"]>select{border-right:none}.top-regionSelector-onlySearcher{width:140px}.top-groupSelector_groupItem{gap:var(--top-padding-1);flex-direction:column;min-height:20px;display:flex}.top-groupSelector_groupItemFolderPath{width:100%;color:var(--color-text-4);font-size:12px}.top-groupSelector{gap:var(--top-padding-1);display:inline-flex}.top-projectSelectorSubmenu .top-popup{min-width:170px}.top-projectSelectorSubmenu ul{flex-flow:wrap}.top-projectSelectorSubmenu_item{width:32%}.top-projectSelectorSubmenu_item a{justify-content:center}.top-projectSelectorSubmenu ul.top-popup_content li>a[data-top-icon]:before{--top-icon-size:24px;--top-icon-width:32px;height:var(--top-icon-width);margin:0}.top-projectSelectorSubmenu_item{flex-grow:1}.top-projectSelector .top-popup{width:278px}.top-projectSelector_item{--top-icon-size:14px;gap:var(--top-gap-1);flex-grow:1;display:flex}.top-projectSelector_itemLink{position:absolute;inset:0}.top-projectSelector_itemText{gap:var(--top-gap-1);flex-direction:column;flex-grow:1;display:flex}.top-projectSelector_itemExtLink,.top-projectSelector_item [class*=opener]{opacity:0;z-index:1;position:relative}.top-popup_listItem:hover .top-projectSelector_item>*,.top-popup_listItem.top-active .top-projectSelector_item>*{opacity:1}@media screen and (min-width:900px){.top-projectSelector.p3 div.top-popup{max-height:min(calc(var(--top-popup-bottom) - 16px), 800px)}}@media screen and (max-width:900px){.top-projectSelector_item [class*=opener]{opacity:1}}[data-tag_id]{gap:var(--top-gap-2);align-items:center;display:inline-flex}[data-tag_id=""]{color:#55555f!important;border-color:#bdc3c7!important}[data-tag_color_id="1"]{border-color:var(--color-tag-1)!important;color:#55555f!important}[data-tag_color_id="2"]{border-color:var(--color-tag-2)!important;color:var(--color-tag-2)!important}[data-tag_color_id="3"]{border-color:var(--color-tag-3)!important;color:var(--color-tag-3)!important}[data-tag_color_id="4"]{border-color:var(--color-tag-4)!important;color:var(--color-tag-4)!important}[data-tag_color_id="5"]{border-color:var(--color-tag-5)!important;color:var(--color-tag-5)!important}[data-tag_color_id="6"]{border-color:var(--color-tag-6)!important;color:var(--color-tag-6)!important}[data-tag_color_id="7"]{border-color:var(--color-tag-7)!important;color:var(--color-tag-7)!important}[data-tag_color_id="8"]{border-color:var(--color-tag-8)!important;color:var(--color-tag-8)!important}[data-tag_color_id="9"]{border-color:var(--color-tag-9)!important;color:var(--color-tag-9)!important}[data-tag_color_id="10"]{border-color:var(--color-tag-10)!important;color:var(--color-tag-10)!important}[data-tag_id=""].top-tagSelector-active{background:#bdc3c7!important}[data-tag_color_id="1"].top-tagSelector-active{background:var(--color-tag-1)!important}[data-tag_color_id="2"].top-tagSelector-active{background:var(--color-tag-2)!important}[data-tag_color_id="3"].top-tagSelector-active{background:var(--color-tag-3)!important}[data-tag_color_id="4"].top-tagSelector-active{background:var(--color-tag-4)!important}[data-tag_color_id="5"].top-tagSelector-active{background:var(--color-tag-5)!important}[data-tag_color_id="6"].top-tagSelector-active{background:var(--color-tag-6)!important}[data-tag_color_id="7"].top-tagSelector-active{background:var(--color-tag-7)!important}[data-tag_color_id="8"].top-tagSelector-active{background:var(--color-tag-8)!important}[data-tag_color_id="9"].top-tagSelector-active{background:var(--color-tag-9)!important}[data-tag_color_id="10"].top-tagSelector-active{background:var(--color-tag-10)!important}[data-tag_id=all]{background:0 0!important;border-color:#0000!important}[data-tag_id=all]:before{content:"";min-width:calc(100% + 4px);height:calc(100% + 4px);margin-top:-18px;margin-left:-8px;font-size:26px;color:var(--color-tag-all)!important}.top-tagSelector-useTopButton [data-tag_id],.top-tagSelector_popup [data-tag_id]{--top-tag-selector-size:10px;box-sizing:content-box;border:2px solid var(--color-layout-front-1);background:var(--color-layout-front-1);width:var(--top-tag-selector-size);height:var(--top-tag-selector-size);font-size:calc(var(--top-tag-selector-size) + 4px);border-radius:100%}.top-body-press_ctrl .top-tagSelector_tagListItem-canExclude:hover [data-tag_id],[data-tag_id].top-tagSelector-excluded{position:relative}.top-body-press_ctrl .top-tagSelector_tagListItem-canExclude:hover [data-tag_id]:before,[data-tag_id].top-tagSelector-excluded:before{content:"";width:calc(var(--top-tag-selector-size) * 2);background:inherit;filter:brightness(80%);height:1px;top:calc(var(--top-tag-selector-size) / 2);left:calc(0px - var(--top-tag-selector-size) / 2);display:block;position:absolute;transform:rotate(-45deg)}.top-body-press_ctrl .top-tagSelector_tagListItem-canExclude:hover [data-tag_id]:not([data-tag_id=all]):not(.top-tagSelector-active):before{background:#aaa}[data-tag_id].top-tagSelector-excluded:after,[data-tag_id].top-tagSelector-excluded~.top-tagSelector_tagListItemName{text-decoration:line-through}.top-popup_listItem.top-tagSelector-active{background:var(--top-popup-background-color-active)!important}.top-popup_listItem:hover [data-tag_id=all]:before{border-color:var(--top-popup-background-color-hover)}.top-popup_listItem.top-tagSelector-active [data-tag_id=all]:before,.top-popup_listItem.top-active [data-tag_id=all]:before{border-color:var(--top-popup-background-color-active)}.top-tagSelector_tagListItem.top-popup_listItem{gap:10px;padding-top:var(--top-padding-2)!important;padding-bottom:var(--top-padding-2)!important}.top-tagSelector_tagListItemName{border-radius:var(--top-radius-1);text-overflow:ellipsis;flex-grow:1;width:120px;margin:-4px -2px;padding:4px 2px;overflow:hidden}.top-tagSelector_edit{--top-icon-size:18px;--top-icon-color:var(--color-text-3);flex-grow:0;width:20px}.top-tagSelector_edit:before{line-height:0}.top-tagSelector_edit{opacity:0}.top-tagSelector_edit:hover{--top-icon-color:var(--color-text-primary)}.top-tagSelector_tagListItem:hover .top-tagSelector_edit,.top-tagSelector_tagListItem-inEdit .top-tagSelector_edit{cursor:pointer;opacity:1}.top-tagSelector_tagListItem-inEdit{outline:1px dashed var(--color-line-2);outline-offset:-1px;background:var(--color-layout-front-3)!important}.top-tagSelector_tagListItem-inEdit .top-tagSelector_tagListItemName{cursor:text;background:var(--color-layout-front-1)}.top-tagSelector_tagListItem-disabled{opacity:.85;cursor:not-allowed!important}.top-tagSelector_tagListItem-disabled:hover{background:inherit}.top-tagSelector_tagListItem-disabled [data-tag_id]{opacity:.6}.top-tagSelector{cursor:pointer;white-space:nowrap;justify-content:left;min-width:0}.top-tagSelector-useTopButton{gap:var(--top-gap-1);vertical-align:middle;width:118px}.top-tagSelector.top-button.top-as-selector{width:126px}.top-tagSelector-useTopButton [data-tag_id=all]:before{margin-right:6px}.top-tagSelector-useTopButton.top-tagSelector-selectedOne [data-tag_id]:after{content:attr(title);text-align:left;text-overflow:ellipsis;min-width:74px;margin-left:20px;line-height:1.2;overflow:hidden}.top-tagSelector-useTopButton.top-tagSelector-selectedOne [data-tag_id=all]:after{margin-left:0}.top-button.top-tagSelector-useTopButton.top-tagSelector-toTwoLine{flex-wrap:wrap;align-content:center}.top-button.top-tagSelector-useTopButton.top-tagSelector-toTwoLine [data-tag_id]{--top-tag-selector-size:8px}.top-button.top-tagSelector-useTopButton.top-tagSelector-toTwoLine [data-tag_id]:nth-child(5){margin-right:4px}.top-tagSelector-useTopButton.top-tagSelector-setter_several,.top-tagSelector-useTopButton.top-tagSelector-setter_several.top-as-selector{width:auto}.top-tagSelector-custom{flex-flow:column wrap;position:relative;align-items:stretch!important;display:flex!important}.top-tagSelector-custom [data-tag_id]{flex:auto;width:auto;min-width:50%;min-height:20%}.top-tagSelector_popup .top-popup{-webkit-user-select:none;user-select:none;text-align:left;min-width:220px!important}.top-tagSelector_popup .top-popup_header .top-select{flex-grow:1}
|
|
1
|
+
.top-competitorSelector_opener.top-button{width:100%}.top-select-searcher_key[data-value="0"]:after,.top-select-searcher_key[data-value="20"]:after,.top-select-searcher_key[data-value="21"]:after{color:red}.top-select-searcher_key[data-value="1"]:after{color:var(--color-bg-primary-2)}.top-select-searcher_key[data-value="2"]:after{color:#005ff9}.top-select-searcher_key[data-value="3"]:after{color:#01509b}.top-select-searcher_key[data-value="4"]:after{color:red}.top-select-searcher_key[data-value="5"]:after{color:#008373}.top-select-searcher_key[data-value="6"]:after{color:#4800b5}.top-select-searcher_key[data-value="7"]:after{color:#c00}.top-select-searcher_key[data-value="8"]:after{color:#1badf8}.top-select-searcher_key[data-value="9"]:after{color:#00ceff}.top-regionSelector{vertical-align:middle;width:340px;display:inline-flex}.top-regionSelector>.top-select{flex-grow:1}.top-regionSelector>.top-select:focus-within{z-index:4}.top-regionSelector>.top-select>.top-select_select:hover,.top-regionSelector>.top-select>.top-select_select.top-error{z-index:1}.top-regionSelector>.top-select-searcher_key{width:140px;max-width:160px;margin-right:-1px}.top-regionSelector>.top-select-region>select{border-top-left-radius:0;border-bottom-left-radius:0}.top-regionSelector>.top-select-region{--top-icon-size:20px;--top-icon-color:var(--color-text-primary);--top-icon2-size:20px;--top-icon2-color:var(--color-text-primary)}.top-regionSelector>.top-select-region[data-top-icon][data-top-icon2]{--top-icon2-size:16px}.top-regionSelector>.top-select-region[data-top-icon][data-top-icon2]:after{text-indent:-4px}.top-regionSelector>[name=compare]{border-top-left-radius:0;border-bottom-left-radius:0;flex-grow:1}.top-regionSelector>[name=compare]:after{content:"(" attr(data-count-compare-regions-indexes) ")";margin:0 0 0 6px}.top-regionSelector:not(.top-regionSelector-onlySearcher)>.top-select-searcher_key>select{border-top-right-radius:0;border-bottom-right-radius:0;margin-right:0}.top-regionSelector:not(.top-regionSelector-onlySearcher)>.top-select-searcher_key[data-value="-1"]>select{border-right:none}.top-regionSelector-onlySearcher{width:140px}.top-groupSelector_groupItem{gap:var(--top-padding-1);flex-direction:column;min-height:20px;display:flex}.top-groupSelector_groupItemFolderPath{width:100%;color:var(--color-text-4);font-size:12px}.top-groupSelector{gap:var(--top-padding-1);display:inline-flex}@media (min-width:900px){.top-projectSelectorSubmenu .top-popup{min-width:unset}.top-projectSelectorSubmenu ul{grid-template-columns:repeat(3,1fr);display:grid}.top-projectSelectorSubmenu ul.top-popup_content li>a[data-top-icon]:before{--top-icon-size:24px;--top-icon-width:32px;height:var(--top-icon-width);margin:0}}.top-projectSelector .top-popup{width:278px}.top-projectSelector_itemLink{position:absolute;inset:0}.top-projectSelector_itemText{gap:var(--top-gap-1);flex-direction:column;flex-grow:1;display:flex}.top-projectSelector_item>.top-button{opacity:0;z-index:1;position:relative}.top-projectSelector_item:hover>.top-button,.top-projectSelector_item.top-active>.top-button{opacity:1}@media screen and (min-width:900px){.top-projectSelector.p3 div.top-popup{max-height:min(calc(var(--top-popup-bottom) - 16px), 800px)}}@media screen and (max-width:900px){.top-projectSelector_item>.top-button{opacity:1}}[data-tag_id]{gap:var(--top-gap-2);align-items:center;display:inline-flex}[data-tag_id=""]{color:#55555f!important;border-color:#bdc3c7!important}[data-tag_color_id="1"]{border-color:var(--color-tag-1)!important;color:#55555f!important}[data-tag_color_id="2"]{border-color:var(--color-tag-2)!important;color:var(--color-tag-2)!important}[data-tag_color_id="3"]{border-color:var(--color-tag-3)!important;color:var(--color-tag-3)!important}[data-tag_color_id="4"]{border-color:var(--color-tag-4)!important;color:var(--color-tag-4)!important}[data-tag_color_id="5"]{border-color:var(--color-tag-5)!important;color:var(--color-tag-5)!important}[data-tag_color_id="6"]{border-color:var(--color-tag-6)!important;color:var(--color-tag-6)!important}[data-tag_color_id="7"]{border-color:var(--color-tag-7)!important;color:var(--color-tag-7)!important}[data-tag_color_id="8"]{border-color:var(--color-tag-8)!important;color:var(--color-tag-8)!important}[data-tag_color_id="9"]{border-color:var(--color-tag-9)!important;color:var(--color-tag-9)!important}[data-tag_color_id="10"]{border-color:var(--color-tag-10)!important;color:var(--color-tag-10)!important}[data-tag_id=""].top-tagSelector-active{background:#bdc3c7!important}[data-tag_color_id="1"].top-tagSelector-active{background:var(--color-tag-1)!important}[data-tag_color_id="2"].top-tagSelector-active{background:var(--color-tag-2)!important}[data-tag_color_id="3"].top-tagSelector-active{background:var(--color-tag-3)!important}[data-tag_color_id="4"].top-tagSelector-active{background:var(--color-tag-4)!important}[data-tag_color_id="5"].top-tagSelector-active{background:var(--color-tag-5)!important}[data-tag_color_id="6"].top-tagSelector-active{background:var(--color-tag-6)!important}[data-tag_color_id="7"].top-tagSelector-active{background:var(--color-tag-7)!important}[data-tag_color_id="8"].top-tagSelector-active{background:var(--color-tag-8)!important}[data-tag_color_id="9"].top-tagSelector-active{background:var(--color-tag-9)!important}[data-tag_color_id="10"].top-tagSelector-active{background:var(--color-tag-10)!important}[data-tag_id=all]{background:0 0!important;border-color:#0000!important}[data-tag_id=all]:before{content:"";min-width:calc(100% + 4px);height:calc(100% + 4px);margin-top:-18px;margin-left:-8px;font-size:26px;color:var(--color-tag-all)!important}.top-tagSelector-useTopButton [data-tag_id],.top-tagSelector_popup [data-tag_id]{--top-tag-selector-size:10px;box-sizing:content-box;border:2px solid var(--color-layout-front-1);background:var(--color-layout-front-1);width:var(--top-tag-selector-size);height:var(--top-tag-selector-size);font-size:calc(var(--top-tag-selector-size) + 4px);border-radius:100%}.top-body-press_ctrl .top-tagSelector_tagListItem-canExclude:hover [data-tag_id],[data-tag_id].top-tagSelector-excluded{position:relative}.top-body-press_ctrl .top-tagSelector_tagListItem-canExclude:hover [data-tag_id]:before,[data-tag_id].top-tagSelector-excluded:before{content:"";width:calc(var(--top-tag-selector-size) * 2);background:inherit;filter:brightness(80%);height:1px;top:calc(var(--top-tag-selector-size) / 2);left:calc(0px - var(--top-tag-selector-size) / 2);display:block;position:absolute;transform:rotate(-45deg)}.top-body-press_ctrl .top-tagSelector_tagListItem-canExclude:hover [data-tag_id]:not([data-tag_id=all]):not(.top-tagSelector-active):before{background:#aaa}[data-tag_id].top-tagSelector-excluded:after,[data-tag_id].top-tagSelector-excluded~.top-tagSelector_tagListItemName{text-decoration:line-through}.top-popup_listItem.top-tagSelector-active{background:var(--top-popup-background-color-active)!important}.top-popup_listItem:hover [data-tag_id=all]:before{border-color:var(--top-popup-background-color-hover)}.top-popup_listItem.top-tagSelector-active [data-tag_id=all]:before,.top-popup_listItem.top-active [data-tag_id=all]:before{border-color:var(--top-popup-background-color-active)}.top-tagSelector_tagListItem.top-popup_listItem{gap:10px;padding-top:var(--top-padding-2)!important;padding-bottom:var(--top-padding-2)!important}.top-tagSelector_tagListItemName{border-radius:var(--top-radius-1);text-overflow:ellipsis;flex-grow:1;width:120px;margin:-4px -2px;padding:4px 2px;overflow:hidden}.top-tagSelector_edit{--top-icon-size:18px;--top-icon-color:var(--color-text-3);flex-grow:0;width:20px}.top-tagSelector_edit:before{line-height:0}.top-tagSelector_edit{opacity:0}.top-tagSelector_edit:hover{--top-icon-color:var(--color-text-primary)}.top-tagSelector_tagListItem:hover .top-tagSelector_edit,.top-tagSelector_tagListItem-inEdit .top-tagSelector_edit{cursor:pointer;opacity:1}.top-tagSelector_tagListItem-inEdit{outline:1px dashed var(--color-line-2);outline-offset:-1px;background:var(--color-layout-front-3)!important}.top-tagSelector_tagListItem-inEdit .top-tagSelector_tagListItemName{cursor:text;background:var(--color-layout-front-1)}.top-tagSelector_tagListItem-disabled{opacity:.85;cursor:not-allowed!important}.top-tagSelector_tagListItem-disabled:hover{background:inherit}.top-tagSelector_tagListItem-disabled [data-tag_id]{opacity:.6}.top-tagSelector{cursor:pointer;white-space:nowrap;justify-content:left;min-width:0}.top-tagSelector-useTopButton{gap:var(--top-gap-1);vertical-align:middle;width:118px}.top-tagSelector.top-button.top-as-selector{width:126px}.top-tagSelector-useTopButton [data-tag_id=all]:before{margin-right:6px}.top-tagSelector-useTopButton.top-tagSelector-selectedOne [data-tag_id]:after{content:attr(title);text-align:left;text-overflow:ellipsis;min-width:74px;margin-left:20px;line-height:1.2;overflow:hidden}.top-tagSelector-useTopButton.top-tagSelector-selectedOne [data-tag_id=all]:after{margin-left:0}.top-button.top-tagSelector-useTopButton.top-tagSelector-toTwoLine{flex-wrap:wrap;align-content:center}.top-button.top-tagSelector-useTopButton.top-tagSelector-toTwoLine [data-tag_id]{--top-tag-selector-size:8px}.top-button.top-tagSelector-useTopButton.top-tagSelector-toTwoLine [data-tag_id]:nth-child(5){margin-right:4px}.top-tagSelector-useTopButton.top-tagSelector-setter_several,.top-tagSelector-useTopButton.top-tagSelector-setter_several.top-as-selector{width:auto}.top-tagSelector-custom{flex-flow:column wrap;position:relative;align-items:stretch!important;display:flex!important}.top-tagSelector-custom [data-tag_id]{flex:auto;width:auto;min-width:50%;min-height:20%}.top-tagSelector_popup .top-popup{-webkit-user-select:none;user-select:none;text-align:left;min-width:220px!important}.top-tagSelector_popup .top-popup_header .top-select{flex-grow:1}
|
|
@@ -69,16 +69,16 @@
|
|
|
69
69
|
"tabsView/tabsView.amd.js": [
|
|
70
70
|
"../assets/tabsView.css"
|
|
71
71
|
],
|
|
72
|
-
".chunks/dialog_regionSelectorRegions-
|
|
72
|
+
".chunks/dialog_regionSelectorRegions-0M1fMu1a.amd.js": [
|
|
73
73
|
"../assets/dialog_regionSelectorRegions.css"
|
|
74
74
|
],
|
|
75
|
-
".chunks/formsExt-
|
|
75
|
+
".chunks/formsExt-C9r4Gz9y.amd.js": [
|
|
76
76
|
"../assets/formsExt.css"
|
|
77
77
|
],
|
|
78
|
-
".chunks/notice-
|
|
78
|
+
".chunks/notice-bro62vCA.amd.js": [
|
|
79
79
|
"../assets/notice.css"
|
|
80
80
|
],
|
|
81
|
-
".chunks/popup-
|
|
81
|
+
".chunks/popup-3cwJ8Hev.amd.js": [
|
|
82
82
|
"../assets/popup.css"
|
|
83
83
|
]
|
|
84
84
|
}
|
|
@@ -80,16 +80,16 @@
|
|
|
80
80
|
"tabsView/tabsView.js": [
|
|
81
81
|
"../assets/tabsView.css"
|
|
82
82
|
],
|
|
83
|
-
".chunks/dialog_regionSelectorRegions-
|
|
83
|
+
".chunks/dialog_regionSelectorRegions-0M1fMu1a.esm.js": [
|
|
84
84
|
"../assets/dialog_regionSelectorRegions.css"
|
|
85
85
|
],
|
|
86
|
-
".chunks/formsExt-
|
|
86
|
+
".chunks/formsExt-C9r4Gz9y.esm.js": [
|
|
87
87
|
"../assets/formsExt.css"
|
|
88
88
|
],
|
|
89
|
-
".chunks/notice-
|
|
89
|
+
".chunks/notice-bro62vCA.esm.js": [
|
|
90
90
|
"../assets/notice.css"
|
|
91
91
|
],
|
|
92
|
-
".chunks/popup-
|
|
92
|
+
".chunks/popup-3cwJ8Hev.esm.js": [
|
|
93
93
|
"../assets/popup.css"
|
|
94
94
|
]
|
|
95
95
|
}
|
package/charts/charts.amd.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
define([`require`,`exports`,`../.chunks/forms-
|
|
1
|
+
define([`require`,`exports`,`../.chunks/forms-CY5MOh7a.amd`,`../utils/number.amd`,`vue`,`../require/css.amd!../assets/charts.css`],function(e,t,n,r,i){"use strict";if(a===void 0)var a=window.Vue;Object.defineProperty(t,"__esModule",{value:!0}),t.TopMiniCharts=t.TopMiniChart=void 0;var o=[`data-top-icon`],s={class:`top-miniChart_chart`},c=[`onMouseenter`],l={class:`top-miniChart_data`},u={class:`top-miniChart_dataValue`},d=[`innerHTML`],f=(0,i.defineComponent)({__name:`miniChart`,props:(0,i.mergeModels)({title:{},gIcon:{},color:{default:`blue`},dates:{},values:{},activeDates:{},keysForDyn:{},dynamic:{},isInvert:{type:Boolean},numberCols:{default:90},additionalHTML:{},modelValue:{},valueSuffix:{},hideChartInMobile:{type:Boolean}},{modelValue:{},modelModifiers:{}}),emits:[`update:modelValue`],setup(e){let t=e,a=(0,i.useModel)(e,`modelValue`),f=e=>{let n=m.value;t.isInvert&&(--e,--n);let r=n>0?Math.round(e/n*90):0;return t.isInvert?100-r:r+10},p=e=>t.activeDates.includes(e),m=(0,i.computed)(()=>Math.max(...t.values)),h=(0,i.computed)(()=>t.dates.slice().reverse()),g=(0,i.computed)(()=>t.dates.length?t.numberCols-t.dates.length:0),_=()=>{a.value=null},v=(e,r,i)=>{e.target instanceof HTMLElement&&(a.value={elCol:e.target,date:(0,n._)(r),value:i===null?`--`:i+(t.valueSuffix??``)})},y=(0,i.computed)(()=>{let e=t.dynamic;if(e===void 0){let n=t.values[t.keysForDyn.start];e=t.values[t.keysForDyn.end]-n}return(e<0?-1:1)*(0,r.percentOfNumber)(Math.abs(e))}),b=(0,i.computed)(()=>{let e=`stay`;return t.isInvert?(y.value>0&&(e=`down`),y.value<0&&(e=`up`)):(y.value>0&&(e=`up`),y.value<0&&(e=`down`)),e});return(t,n)=>((0,i.openBlock)(),(0,i.createElementBlock)(`div`,{class:(0,i.normalizeClass)({"top-miniChart":!0,"top-miniChart_hideChartInMobile":e.hideChartInMobile,[`top-color_${e.color}`]:!0})},[(0,i.createElementVNode)(`div`,{class:`top-miniChart_title top-ellipsis`,"data-top-icon":e.gIcon},(0,i.toDisplayString)(e.title),9,o),(0,i.createElementVNode)(`div`,s,[(0,i.createElementVNode)(`div`,{class:`top-miniChart_chartGrid`,onMouseleave:n[1]||=e=>_()},[((0,i.openBlock)(!0),(0,i.createElementBlock)(i.Fragment,null,(0,i.renderList)(h.value,(t,n)=>((0,i.openBlock)(),(0,i.createElementBlock)(`div`,{class:(0,i.normalizeClass)({"top-miniChart_chartGridCol":!0,"top-active":p(t)}),onMouseenter:r=>v(r,t,e.values[e.values.length-n-1])},[(0,i.createElementVNode)(`div`,{style:(0,i.normalizeStyle)(`height:`+f(e.values[e.values.length-n-1])+`%`)},null,4)],42,c))),256)),((0,i.openBlock)(!0),(0,i.createElementBlock)(i.Fragment,null,(0,i.renderList)(g.value,()=>((0,i.openBlock)(),(0,i.createElementBlock)(`div`,{class:`top-miniChart_chartGridCol top-miniChart_chartGridCol-none`,onMouseenter:n[0]||=e=>_()},[...n[2]||=[(0,i.createElementVNode)(`div`,null,null,-1)]],32))),256))],32)]),(0,i.createElementVNode)(`div`,l,[(0,i.createElementVNode)(`span`,{class:(0,i.normalizeClass)({"top-miniChart_dataDynamic":!0,[`top-miniChart_dataDynamic-direction_${b.value}`]:!0})},(0,i.toDisplayString)(Math.abs(y.value)||``),3),(0,i.createElementVNode)(`span`,u,(0,i.toDisplayString)((0,i.unref)(r.percentOfNumber)(e.values[e.values.length-1])||0),1)]),e.additionalHTML?((0,i.openBlock)(),(0,i.createElementBlock)(`div`,{key:0,innerHTML:e.additionalHTML},null,8,d)):(0,i.createCommentVNode)(``,!0)],2))}}),p={key:0,class:`top-miniCharts_pages`},m=[`onClick`],h=(0,i.defineComponent)({__name:`miniCharts`,props:(0,i.mergeModels)({modelValue:{},countCharts:{},hideChartInMobile:{type:Boolean}},{modelValue:{},modelModifiers:{}}),emits:[`update:modelValue`],setup(e){let t=e,n=(0,i.useModel)(e,`modelValue`),r=(0,i.ref)(null),a,o=(0,i.ref)(1),s=(0,i.ref)(1),c=()=>{o.value=Math.round(r.value.scrollHeight/r.value.clientHeight)};(0,i.watch)(o,()=>{o.value<s.value&&(s.value=1)}),(0,i.watch)(()=>t.countCharts,()=>c(),{flush:`post`});let l=(0,i.computed)(()=>{if(!n.value)return{};let e=n.value.elCol.getBoundingClientRect(),t={top:e.bottom+window.scrollY+`px`};return document.documentElement.clientWidth/2>e.right?t.left=e.right+window.scrollX+10+`px`:(t.left=e.left+window.scrollX-10+`px`,t.transform=`translate(-100%, 0)`),t});return(0,i.onMounted)(()=>{a=new ResizeObserver(()=>c()),a.observe(r.value),(0,i.watch)(s,()=>{let e=(r.value.children[0].clientHeight+parseInt(window.getComputedStyle(r.value).getPropertyValue(`row-gap`)))*(s.value-1);r.value.scrollTo({top:e,behavior:`smooth`})})}),(0,i.onUnmounted)(()=>{a.disconnect()}),(t,a)=>((0,i.openBlock)(),(0,i.createElementBlock)(`div`,{class:(0,i.normalizeClass)([`top-miniCharts`,{"top-miniCharts":!0,scrollable:o.value>1,"top-miniCharts_hideChartInMobile":e.hideChartInMobile}]),ref_key:`elRef`,ref:r},[(0,i.renderSlot)(t.$slots,`default`),o.value>1?((0,i.openBlock)(),(0,i.createElementBlock)(`div`,p,[((0,i.openBlock)(!0),(0,i.createElementBlock)(i.Fragment,null,(0,i.renderList)(o.value,e=>((0,i.openBlock)(),(0,i.createElementBlock)(`span`,{class:(0,i.normalizeClass)({"top-active":e===s.value}),onClick:t=>s.value=e},null,10,m))),256))])):(0,i.createCommentVNode)(``,!0),((0,i.openBlock)(),(0,i.createBlock)(i.Teleport,{to:`body`},[n.value?((0,i.openBlock)(),(0,i.createElementBlock)(`div`,{key:0,class:`top-miniCharts_tooltip`,style:(0,i.normalizeStyle)(l.value)},[(0,i.createElementVNode)(`span`,null,(0,i.toDisplayString)(n.value.date),1),(0,i.createElementVNode)(`span`,null,(0,i.toDisplayString)(n.value.value),1)],4)):(0,i.createCommentVNode)(``,!0)]))],2))}});t.TopMiniChart=f,t.TopMiniCharts=h});
|
|
2
2
|
//# sourceMappingURL=charts.amd.js.map
|
package/charts/charts.amd.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["charts/charts.js","../../src/components/charts/miniChart/miniChart.vue","../../src/components/charts/miniCharts/miniCharts.vue"],"names":["vue","exports","C","w","T","E","D","O","k","vue_1","a","r","l","u","t","n","g","v","S","forms_BiKUURH4_esm_js_1","A","number_js_1","j","e","M","b"],"mappings":"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","sourcesContent":["define([\"require\", \"exports\", \"../.chunks/forms-BiKUURH4.esm.js\", \"../utils/number.js\", \"vue\"], function (require, exports, forms_BiKUURH4_esm_js_1, number_js_1, vue_1) {\n \"use strict\";\n Object.defineProperty(exports, \"__esModule\", { value: true });\n exports.TopMiniCharts = exports.TopMiniChart = void 0;\n //#region src/components/charts/miniChart/miniChart.vue?vue&type=script&setup=true&lang.ts\n var C = [\"data-top-icon\"], w = { class: \"top-miniChart_chart\" }, T = [\"onMouseenter\"], E = { class: \"top-miniChart_data\" }, D = { class: \"top-miniChart_dataValue\" }, O = [\"innerHTML\"], k = /* @__PURE__ */ (0, vue_1.defineComponent)({\n __name: \"miniChart\",\n props: /*@__PURE__*/ (0, vue_1.mergeModels)({\n title: {},\n gIcon: {},\n color: { default: \"blue\" },\n dates: {},\n values: {},\n activeDates: {},\n keysForDyn: {},\n dynamic: {},\n isInvert: { type: Boolean },\n numberCols: { default: 90 },\n additionalHTML: {},\n modelValue: {},\n valueSuffix: {},\n hideChartInMobile: { type: Boolean }\n }, {\n modelValue: {},\n modelModifiers: {}\n }),\n emits: [\"update:modelValue\"],\n setup(r) {\n let a = r, l = (0, vue_1.useModel)(r, \"modelValue\"), u = (e) => {\n let t = m.value;\n a.isInvert && (--e, --t);\n let n = t > 0 ? Math.round(e / t * 90) : 0;\n return a.isInvert ? 100 - n : n + 10;\n }, p = (e) => a.activeDates.includes(e), m = (0, vue_1.computed)(() => Math.max(...a.values)), g = (0, vue_1.computed)(() => a.dates.slice().reverse()), v = (0, vue_1.computed)(() => a.dates.length ? a.numberCols - a.dates.length : 0), S = () => {\n l.value = null;\n }, k = (t, n, r) => {\n t.target instanceof HTMLElement && (l.value = {\n elCol: t.target,\n date: (0, forms_BiKUURH4_esm_js_1._)(n),\n value: r === null ? \"--\" : r + (a.valueSuffix ?? \"\")\n });\n }, A = (0, vue_1.computed)(() => {\n let e = a.dynamic;\n if (e === void 0) {\n let t = a.values[a.keysForDyn.start];\n e = a.values[a.keysForDyn.end] - t;\n }\n return (e < 0 ? -1 : 1) * (0, number_js_1.percentOfNumber)(Math.abs(e));\n }), j = (0, vue_1.computed)(() => {\n let e = \"stay\";\n return a.isInvert ? (A.value > 0 && (e = \"down\"), A.value < 0 && (e = \"up\")) : (A.value > 0 && (e = \"up\"), A.value < 0 && (e = \"down\")), e;\n });\n return (e, i) => ((0, vue_1.openBlock)(), (0, vue_1.createElementBlock)(\"div\", { class: (0, vue_1.normalizeClass)({\n \"top-miniChart\": !0,\n \"top-miniChart_hideChartInMobile\": r.hideChartInMobile,\n [`top-color_${r.color}`]: !0\n }) }, [\n (0, vue_1.createElementVNode)(\"div\", {\n class: \"top-miniChart_title top-ellipsis\",\n \"data-top-icon\": r.gIcon\n }, (0, vue_1.toDisplayString)(r.title), 9, C),\n (0, vue_1.createElementVNode)(\"div\", w, [(0, vue_1.createElementVNode)(\"div\", {\n class: \"top-miniChart_chartGrid\",\n onMouseleave: i[1] ||= (e) => S()\n }, [((0, vue_1.openBlock)(!0), (0, vue_1.createElementBlock)(vue_1.Fragment, null, (0, vue_1.renderList)(g.value, (e, t) => ((0, vue_1.openBlock)(), (0, vue_1.createElementBlock)(\"div\", {\n class: (0, vue_1.normalizeClass)({\n \"top-miniChart_chartGridCol\": !0,\n \"top-active\": p(e)\n }),\n onMouseenter: (n) => k(n, e, r.values[r.values.length - t - 1])\n }, [(0, vue_1.createElementVNode)(\"div\", { style: (0, vue_1.normalizeStyle)(\"height:\" + u(r.values[r.values.length - t - 1]) + \"%\") }, null, 4)], 42, T))), 256)), ((0, vue_1.openBlock)(!0), (0, vue_1.createElementBlock)(vue_1.Fragment, null, (0, vue_1.renderList)(v.value, () => ((0, vue_1.openBlock)(), (0, vue_1.createElementBlock)(\"div\", {\n class: \"top-miniChart_chartGridCol top-miniChart_chartGridCol-none\",\n onMouseenter: i[0] ||= (e) => S()\n }, [...i[2] ||= [(0, vue_1.createElementVNode)(\"div\", null, null, -1)]], 32))), 256))], 32)]),\n (0, vue_1.createElementVNode)(\"div\", E, [(0, vue_1.createElementVNode)(\"span\", { class: (0, vue_1.normalizeClass)({\n \"top-miniChart_dataDynamic\": !0,\n [`top-miniChart_dataDynamic-direction_${j.value}`]: !0\n }) }, (0, vue_1.toDisplayString)(Math.abs(A.value) || \"\"), 3), (0, vue_1.createElementVNode)(\"span\", D, (0, vue_1.toDisplayString)((0, vue_1.unref)(number_js_1.percentOfNumber)(r.values[r.values.length - 1]) || 0), 1)]),\n r.additionalHTML ? ((0, vue_1.openBlock)(), (0, vue_1.createElementBlock)(\"div\", {\n key: 0,\n innerHTML: r.additionalHTML\n }, null, 8, O)) : (0, vue_1.createCommentVNode)(\"\", !0)\n ], 2));\n }\n }), A = {\n key: 0,\n class: \"top-miniCharts_pages\"\n }, j = [\"onClick\"], M = /* @__PURE__ */ (0, vue_1.defineComponent)({\n __name: \"miniCharts\",\n props: /*@__PURE__*/ (0, vue_1.mergeModels)({\n modelValue: {},\n countCharts: {},\n hideChartInMobile: { type: Boolean }\n }, {\n modelValue: {},\n modelModifiers: {}\n }),\n emits: [\"update:modelValue\"],\n setup(e) {\n let t = e, l = (0, vue_1.useModel)(e, \"modelValue\"), u = (0, vue_1.ref)(null), b, C = (0, vue_1.ref)(1), w = (0, vue_1.ref)(1), T = () => {\n C.value = Math.round(u.value.scrollHeight / u.value.clientHeight);\n };\n (0, vue_1.watch)(C, () => {\n C.value < w.value && (w.value = 1);\n }), (0, vue_1.watch)(() => t.countCharts, () => T(), { flush: \"post\" });\n let E = (0, vue_1.computed)(() => {\n if (!l.value)\n return {};\n let e = l.value.elCol.getBoundingClientRect(), t = { top: e.bottom + window.scrollY + \"px\" };\n return document.documentElement.clientWidth / 2 > e.right ? t.left = e.right + window.scrollX + 10 + \"px\" : (t.left = e.left + window.scrollX - 10 + \"px\", t.transform = \"translate(-100%, 0)\"), t;\n });\n return (0, vue_1.onMounted)(() => {\n b = new ResizeObserver(() => T()), b.observe(u.value), (0, vue_1.watch)(w, () => {\n let e = (u.value.children[0].clientHeight + parseInt(window.getComputedStyle(u.value).getPropertyValue(\"row-gap\"))) * (w.value - 1);\n u.value.scrollTo({\n top: e,\n behavior: \"smooth\"\n });\n });\n }), (0, vue_1.onUnmounted)(() => {\n b.disconnect();\n }), (t, i) => ((0, vue_1.openBlock)(), (0, vue_1.createElementBlock)(\"div\", {\n class: (0, vue_1.normalizeClass)([\"top-miniCharts\", {\n \"top-miniCharts\": !0,\n scrollable: C.value > 1,\n \"top-miniCharts_hideChartInMobile\": e.hideChartInMobile\n }]),\n ref_key: \"elRef\",\n ref: u\n }, [\n (0, vue_1.renderSlot)(t.$slots, \"default\"),\n C.value > 1 ? ((0, vue_1.openBlock)(), (0, vue_1.createElementBlock)(\"div\", A, [((0, vue_1.openBlock)(!0), (0, vue_1.createElementBlock)(vue_1.Fragment, null, (0, vue_1.renderList)(C.value, (e) => ((0, vue_1.openBlock)(), (0, vue_1.createElementBlock)(\"span\", {\n class: (0, vue_1.normalizeClass)({ \"top-active\": e === w.value }),\n onClick: (t) => w.value = e\n }, null, 10, j))), 256))])) : (0, vue_1.createCommentVNode)(\"\", !0),\n ((0, vue_1.openBlock)(), (0, vue_1.createBlock)(vue_1.Teleport, { to: \"body\" }, [l.value ? ((0, vue_1.openBlock)(), (0, vue_1.createElementBlock)(\"div\", {\n key: 0,\n class: \"top-miniCharts_tooltip\",\n style: (0, vue_1.normalizeStyle)(E.value)\n }, [(0, vue_1.createElementVNode)(\"span\", null, (0, vue_1.toDisplayString)(l.value.date), 1), (0, vue_1.createElementVNode)(\"span\", null, (0, vue_1.toDisplayString)(l.value.value), 1)], 4)) : (0, vue_1.createCommentVNode)(\"\", !0)]))\n ], 2));\n }\n });\n exports.TopMiniChart = k;\n exports.TopMiniCharts = M;\n});\n//# sourceMappingURL=charts.js.map\n","<script setup lang=\"ts\">\nimport type { Props } from './types';\nimport { computed } from 'vue';\nimport { dateFormat } from '@/core/utils/date';\nimport { percentOfNumber } from '@/core/utils/number';\nimport { defaultNumberCols, minHeight } from './utils/consts';\n\nconst props = withDefaults(defineProps<Props>(), {\n\tcolor: 'blue',\n\tnumberCols: defaultNumberCols,\n});\nconst model = defineModel<Props['modelValue']>();\n\n/**\n * Расчет высоты колонки (в процентах)\n */\nconst genColHeight = (value: number): number => {\n\tlet maximumValue = maxValue.value;\n\n\t// для графиков средней и медианной делаем максимум 1\n\tif (props.isInvert) {\n\t\tvalue -= 1;\n\t\tmaximumValue -= 1;\n\t}\n\n\tconst height = maximumValue > 0 ? Math.round((value / maximumValue) * (100 - minHeight)) : 0;\n\tif (props.isInvert) return 100 - height;\n\n\treturn height + minHeight;\n};\n\nconst isActiveDate = (date: string) => props.activeDates.includes(date);\n\nconst maxValue = computed(() => Math.max(...props.values));\n\n/**\n * Из-за стиля .top-miniChart_chartGrid - direction: rtl\n */\nconst reversedDates = computed(() => props.dates.slice().reverse());\n\n/**\n * Кол-во пустых колонок\n */\nconst numOfEmptyCols = computed(() => {\n\tif (!props.dates.length) return 0;\n\n\treturn props.numberCols - props.dates.length;\n});\n\nconst resetModel = () => {\n\tmodel.value = null;\n};\n\nconst setModel = (e: Event, date: string, value: number | null) => {\n\tif (!(e.target instanceof HTMLElement)) return;\n\n\tmodel.value = {\n\t\telCol: e.target,\n\t\tdate: dateFormat(date),\n\t\tvalue: value === null ? '--' : value + (props.valueSuffix ?? ''),\n\t};\n};\n\n/**\n * Возвращает численный показатель динамики графика\n */\nconst localDynamic = computed(() => {\n\tlet dynamic = props.dynamic;\n\n\tif (typeof dynamic === 'undefined') {\n\t\tconst prevPeriodValue = props.values[props.keysForDyn.start];\n\t\tconst currentValue = props.values[props.keysForDyn.end];\n\t\tdynamic = currentValue - prevPeriodValue;\n\t}\n\n\tconst sign = dynamic < 0 ? -1 : 1;\n\n\treturn sign * (percentOfNumber(Math.abs(dynamic)) as number);\n});\n\nconst dynamicDirection = computed(() => {\n\tlet direction: 'up' | 'stay' | 'down' = 'stay';\n\n\tif (!props.isInvert) {\n\t\tif (localDynamic.value > 0) direction = 'up';\n\t\tif (localDynamic.value < 0) direction = 'down';\n\t} else {\n\t\tif (localDynamic.value > 0) direction = 'down';\n\t\tif (localDynamic.value < 0) direction = 'up';\n\t}\n\n\treturn direction;\n});\n\n</script>\n\n<template>\n\t<div\n\t\t:class=\"{\n\t\t\t['top-miniChart']: true,\n\t\t\t['top-miniChart_hideChartInMobile']: hideChartInMobile,\n\t\t\t[`top-color_${color}`]: true\n\t\t}\"\n\t>\n\t\t<div\n\t\t\tclass=\"top-miniChart_title top-ellipsis\"\n\t\t\t:data-top-icon=\"gIcon\"\n\t\t>\n\t\t\t{{ title }}\n\t\t</div>\n\n\t\t<div class=\"top-miniChart_chart\">\n\t\t\t<div\n\t\t\t\tclass=\"top-miniChart_chartGrid\"\n\t\t\t\t@mouseleave=\"resetModel()\"\n\t\t\t>\n\t\t\t\t<div\n\t\t\t\t\tv-for=\"(date, i) in reversedDates\"\n\t\t\t\t\t:class=\"{\n\t\t\t\t\t\t['top-miniChart_chartGridCol']: true,\n\t\t\t\t\t\t['top-active']: isActiveDate(date)\n\t\t\t\t\t}\"\n\t\t\t\t\t@mouseenter=\"setModel($event, date, values[values.length - i - 1])\"\n\t\t\t\t>\n\t\t\t\t\t<div :style=\"'height:' + genColHeight(values[values.length - i - 1]) + '%'\"/>\n\t\t\t\t</div>\n\t\t\t\t<div\n\t\t\t\t\tv-for=\"() in numOfEmptyCols\"\n\t\t\t\t\tclass=\"top-miniChart_chartGridCol top-miniChart_chartGridCol-none\"\n\t\t\t\t\t@mouseenter=\"resetModel()\"\n\t\t\t\t>\n\t\t\t\t\t<div></div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\n\t\t<div class=\"top-miniChart_data\">\n\t\t\t<span :class=\"{\n\t\t\t\t['top-miniChart_dataDynamic']: true,\n\t\t\t\t[`top-miniChart_dataDynamic-direction_${dynamicDirection}`]: true,\n\t\t\t}\">\n\t\t\t\t{{ Math.abs(localDynamic) || '' }}\n\t\t\t</span>\n\t\t\t<span class=\"top-miniChart_dataValue\">\n\t\t\t\t{{ percentOfNumber(values[values.length - 1]) || 0 }}\n\t\t\t</span>\n\t\t</div>\n\n\t\t<div\n\t\t\tv-if=\"additionalHTML\"\n\t\t\tv-html=\"additionalHTML\"\n\t\t/>\n\t</div>\n\n</template>\n<style>\n@import \"./styles/miniChart.css\";\n</style>\n","<script setup lang=\"ts\">\nimport { computed, onMounted, onUnmounted, ref, watch } from 'vue';\nimport type { Props, Style } from './miniCharts';\n\nconst props = defineProps<Props>();\nconst model = defineModel<Props['modelValue']>();\n\nconst elRef = ref<HTMLElement | null>(null);\n\nlet pagesResizeObserver: ResizeObserver;\n\n/**\n * Количество страниц\n */\nconst countPages = ref(1);\n\n/**\n * Активная страница\n */\nconst activePage = ref(1);\n\n/**\n * Установка количества страниц в блоке\n */\nconst setCountPages = () => {\n\tcountPages.value = Math.round(elRef.value!.scrollHeight / elRef.value!.clientHeight);\n};\n\nwatch(countPages, () => {\n\tif (countPages.value < activePage.value) {\n\t\tactivePage.value = 1;\n\t}\n});\n\nwatch(\n\t() => props.countCharts,\n\t() => setCountPages(),\n\t{ flush: 'post' },\n);\n\n/**\n * Расчет положения для подсказки\n */\nconst tooltipStyle = computed(() => {\n\tif (!model.value) return {};\n\n\tconst box = model.value.elCol.getBoundingClientRect();\n\n\tconst style: Style = {\n\t\ttop: box.bottom + window.scrollY + 'px',\n\t};\n\n\tif (document.documentElement.clientWidth / 2 > box.right) {\n\t\tstyle.left = box.right + window.scrollX + 10 + 'px';\n\t} else {\n\t\tstyle.left = box.left + window.scrollX - 10 + 'px';\n\t\tstyle.transform = 'translate(-100%, 0)';\n\t}\n\n\treturn style;\n});\n\nonMounted(() => {\n\t/**\n\t * Функционал переключения экранов графиков\n\t */\n\tpagesResizeObserver = new ResizeObserver(() => setCountPages());\n\tpagesResizeObserver.observe(elRef.value!);\n\n\twatch(activePage, () => {\n\t\tconst elMiniChart = elRef.value!.children[0];\n\t\tconst pageHeight = elMiniChart.clientHeight + parseInt(window.getComputedStyle(elRef.value!).getPropertyValue('row-gap'));\n\t\tconst scrollTop = pageHeight * (activePage.value - 1);\n\n\t\telRef.value!.scrollTo({ top: scrollTop, behavior: 'smooth' });\n\t});\n});\n\nonUnmounted(() => {\n\tpagesResizeObserver.disconnect();\n});\n</script>\n\n<template>\n\t<div\n\t\tclass=\"top-miniCharts\"\n\t\t:class=\"{\n\t\t\t['top-miniCharts']: true,\n\t\t\t['scrollable']: countPages > 1,\n\t\t\t['top-miniCharts_hideChartInMobile']: hideChartInMobile,\n\t\t}\"\n\t\tref=\"elRef\"\n\t>\n\n\t\t<slot></slot>\n\n\t\t<div\n\t\t\tv-if=\"countPages > 1\"\n\t\t\tclass=\"top-miniCharts_pages\"\n\t\t>\n\t\t\t<span\n\t\t\t\tv-for=\"n in countPages\"\n\t\t\t\t:class=\"{['top-active']: n === activePage}\"\n\t\t\t\t@click=\"activePage = n\"\n\t\t\t></span>\n\t\t</div>\n\n\t\t<Teleport to=\"body\">\n\t\t\t<div\n\t\t\t\tv-if=\"model\"\n\t\t\t\tclass=\"top-miniCharts_tooltip\"\n\t\t\t\t:style=\"tooltipStyle\"\n\t\t\t>\n\t\t\t\t<span>{{ model.date }}</span>\n\t\t\t\t<span>{{ model.value }}</span>\n\t\t\t</div>\n\t\t</Teleport>\n\t</div>\n\n</template>\n\n<style>\n@import \"./styles/miniCharts.css\";\n</style>\n"]}
|
|
1
|
+
{"version":3,"sources":["charts/charts.js","../../src/components/charts/miniChart/miniChart.vue","../../src/components/charts/miniCharts/miniCharts.vue"],"names":["vue","exports","C","w","T","E","D","O","k","vue_1","a","r","l","u","t","n","g","v","S","forms_CY5MOh7a_esm_js_1","A","number_js_1","j","e","M","b"],"mappings":"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","sourcesContent":["define([\"require\", \"exports\", \"../.chunks/forms-CY5MOh7a.esm.js\", \"../utils/number.js\", \"vue\"], function (require, exports, forms_CY5MOh7a_esm_js_1, number_js_1, vue_1) {\n \"use strict\";\n Object.defineProperty(exports, \"__esModule\", { value: true });\n exports.TopMiniCharts = exports.TopMiniChart = void 0;\n //#region src/components/charts/miniChart/miniChart.vue?vue&type=script&setup=true&lang.ts\n var C = [\"data-top-icon\"], w = { class: \"top-miniChart_chart\" }, T = [\"onMouseenter\"], E = { class: \"top-miniChart_data\" }, D = { class: \"top-miniChart_dataValue\" }, O = [\"innerHTML\"], k = /* @__PURE__ */ (0, vue_1.defineComponent)({\n __name: \"miniChart\",\n props: /*@__PURE__*/ (0, vue_1.mergeModels)({\n title: {},\n gIcon: {},\n color: { default: \"blue\" },\n dates: {},\n values: {},\n activeDates: {},\n keysForDyn: {},\n dynamic: {},\n isInvert: { type: Boolean },\n numberCols: { default: 90 },\n additionalHTML: {},\n modelValue: {},\n valueSuffix: {},\n hideChartInMobile: { type: Boolean }\n }, {\n modelValue: {},\n modelModifiers: {}\n }),\n emits: [\"update:modelValue\"],\n setup(r) {\n let a = r, l = (0, vue_1.useModel)(r, \"modelValue\"), u = (e) => {\n let t = m.value;\n a.isInvert && (--e, --t);\n let n = t > 0 ? Math.round(e / t * 90) : 0;\n return a.isInvert ? 100 - n : n + 10;\n }, p = (e) => a.activeDates.includes(e), m = (0, vue_1.computed)(() => Math.max(...a.values)), g = (0, vue_1.computed)(() => a.dates.slice().reverse()), v = (0, vue_1.computed)(() => a.dates.length ? a.numberCols - a.dates.length : 0), S = () => {\n l.value = null;\n }, k = (t, n, r) => {\n t.target instanceof HTMLElement && (l.value = {\n elCol: t.target,\n date: (0, forms_CY5MOh7a_esm_js_1._)(n),\n value: r === null ? \"--\" : r + (a.valueSuffix ?? \"\")\n });\n }, A = (0, vue_1.computed)(() => {\n let e = a.dynamic;\n if (e === void 0) {\n let t = a.values[a.keysForDyn.start];\n e = a.values[a.keysForDyn.end] - t;\n }\n return (e < 0 ? -1 : 1) * (0, number_js_1.percentOfNumber)(Math.abs(e));\n }), j = (0, vue_1.computed)(() => {\n let e = \"stay\";\n return a.isInvert ? (A.value > 0 && (e = \"down\"), A.value < 0 && (e = \"up\")) : (A.value > 0 && (e = \"up\"), A.value < 0 && (e = \"down\")), e;\n });\n return (e, i) => ((0, vue_1.openBlock)(), (0, vue_1.createElementBlock)(\"div\", { class: (0, vue_1.normalizeClass)({\n \"top-miniChart\": !0,\n \"top-miniChart_hideChartInMobile\": r.hideChartInMobile,\n [`top-color_${r.color}`]: !0\n }) }, [\n (0, vue_1.createElementVNode)(\"div\", {\n class: \"top-miniChart_title top-ellipsis\",\n \"data-top-icon\": r.gIcon\n }, (0, vue_1.toDisplayString)(r.title), 9, C),\n (0, vue_1.createElementVNode)(\"div\", w, [(0, vue_1.createElementVNode)(\"div\", {\n class: \"top-miniChart_chartGrid\",\n onMouseleave: i[1] ||= (e) => S()\n }, [((0, vue_1.openBlock)(!0), (0, vue_1.createElementBlock)(vue_1.Fragment, null, (0, vue_1.renderList)(g.value, (e, t) => ((0, vue_1.openBlock)(), (0, vue_1.createElementBlock)(\"div\", {\n class: (0, vue_1.normalizeClass)({\n \"top-miniChart_chartGridCol\": !0,\n \"top-active\": p(e)\n }),\n onMouseenter: (n) => k(n, e, r.values[r.values.length - t - 1])\n }, [(0, vue_1.createElementVNode)(\"div\", { style: (0, vue_1.normalizeStyle)(\"height:\" + u(r.values[r.values.length - t - 1]) + \"%\") }, null, 4)], 42, T))), 256)), ((0, vue_1.openBlock)(!0), (0, vue_1.createElementBlock)(vue_1.Fragment, null, (0, vue_1.renderList)(v.value, () => ((0, vue_1.openBlock)(), (0, vue_1.createElementBlock)(\"div\", {\n class: \"top-miniChart_chartGridCol top-miniChart_chartGridCol-none\",\n onMouseenter: i[0] ||= (e) => S()\n }, [...i[2] ||= [(0, vue_1.createElementVNode)(\"div\", null, null, -1)]], 32))), 256))], 32)]),\n (0, vue_1.createElementVNode)(\"div\", E, [(0, vue_1.createElementVNode)(\"span\", { class: (0, vue_1.normalizeClass)({\n \"top-miniChart_dataDynamic\": !0,\n [`top-miniChart_dataDynamic-direction_${j.value}`]: !0\n }) }, (0, vue_1.toDisplayString)(Math.abs(A.value) || \"\"), 3), (0, vue_1.createElementVNode)(\"span\", D, (0, vue_1.toDisplayString)((0, vue_1.unref)(number_js_1.percentOfNumber)(r.values[r.values.length - 1]) || 0), 1)]),\n r.additionalHTML ? ((0, vue_1.openBlock)(), (0, vue_1.createElementBlock)(\"div\", {\n key: 0,\n innerHTML: r.additionalHTML\n }, null, 8, O)) : (0, vue_1.createCommentVNode)(\"\", !0)\n ], 2));\n }\n }), A = {\n key: 0,\n class: \"top-miniCharts_pages\"\n }, j = [\"onClick\"], M = /* @__PURE__ */ (0, vue_1.defineComponent)({\n __name: \"miniCharts\",\n props: /*@__PURE__*/ (0, vue_1.mergeModels)({\n modelValue: {},\n countCharts: {},\n hideChartInMobile: { type: Boolean }\n }, {\n modelValue: {},\n modelModifiers: {}\n }),\n emits: [\"update:modelValue\"],\n setup(e) {\n let t = e, l = (0, vue_1.useModel)(e, \"modelValue\"), u = (0, vue_1.ref)(null), b, C = (0, vue_1.ref)(1), w = (0, vue_1.ref)(1), T = () => {\n C.value = Math.round(u.value.scrollHeight / u.value.clientHeight);\n };\n (0, vue_1.watch)(C, () => {\n C.value < w.value && (w.value = 1);\n }), (0, vue_1.watch)(() => t.countCharts, () => T(), { flush: \"post\" });\n let E = (0, vue_1.computed)(() => {\n if (!l.value)\n return {};\n let e = l.value.elCol.getBoundingClientRect(), t = { top: e.bottom + window.scrollY + \"px\" };\n return document.documentElement.clientWidth / 2 > e.right ? t.left = e.right + window.scrollX + 10 + \"px\" : (t.left = e.left + window.scrollX - 10 + \"px\", t.transform = \"translate(-100%, 0)\"), t;\n });\n return (0, vue_1.onMounted)(() => {\n b = new ResizeObserver(() => T()), b.observe(u.value), (0, vue_1.watch)(w, () => {\n let e = (u.value.children[0].clientHeight + parseInt(window.getComputedStyle(u.value).getPropertyValue(\"row-gap\"))) * (w.value - 1);\n u.value.scrollTo({\n top: e,\n behavior: \"smooth\"\n });\n });\n }), (0, vue_1.onUnmounted)(() => {\n b.disconnect();\n }), (t, i) => ((0, vue_1.openBlock)(), (0, vue_1.createElementBlock)(\"div\", {\n class: (0, vue_1.normalizeClass)([\"top-miniCharts\", {\n \"top-miniCharts\": !0,\n scrollable: C.value > 1,\n \"top-miniCharts_hideChartInMobile\": e.hideChartInMobile\n }]),\n ref_key: \"elRef\",\n ref: u\n }, [\n (0, vue_1.renderSlot)(t.$slots, \"default\"),\n C.value > 1 ? ((0, vue_1.openBlock)(), (0, vue_1.createElementBlock)(\"div\", A, [((0, vue_1.openBlock)(!0), (0, vue_1.createElementBlock)(vue_1.Fragment, null, (0, vue_1.renderList)(C.value, (e) => ((0, vue_1.openBlock)(), (0, vue_1.createElementBlock)(\"span\", {\n class: (0, vue_1.normalizeClass)({ \"top-active\": e === w.value }),\n onClick: (t) => w.value = e\n }, null, 10, j))), 256))])) : (0, vue_1.createCommentVNode)(\"\", !0),\n ((0, vue_1.openBlock)(), (0, vue_1.createBlock)(vue_1.Teleport, { to: \"body\" }, [l.value ? ((0, vue_1.openBlock)(), (0, vue_1.createElementBlock)(\"div\", {\n key: 0,\n class: \"top-miniCharts_tooltip\",\n style: (0, vue_1.normalizeStyle)(E.value)\n }, [(0, vue_1.createElementVNode)(\"span\", null, (0, vue_1.toDisplayString)(l.value.date), 1), (0, vue_1.createElementVNode)(\"span\", null, (0, vue_1.toDisplayString)(l.value.value), 1)], 4)) : (0, vue_1.createCommentVNode)(\"\", !0)]))\n ], 2));\n }\n });\n exports.TopMiniChart = k;\n exports.TopMiniCharts = M;\n});\n//# sourceMappingURL=charts.js.map\n","<script setup lang=\"ts\">\nimport type { Props } from './types';\nimport { computed } from 'vue';\nimport { dateFormat } from '@/core/utils/date';\nimport { percentOfNumber } from '@/core/utils/number';\nimport { defaultNumberCols, minHeight } from './utils/consts';\n\nconst props = withDefaults(defineProps<Props>(), {\n\tcolor: 'blue',\n\tnumberCols: defaultNumberCols,\n});\nconst model = defineModel<Props['modelValue']>();\n\n/**\n * Расчет высоты колонки (в процентах)\n */\nconst genColHeight = (value: number): number => {\n\tlet maximumValue = maxValue.value;\n\n\t// для графиков средней и медианной делаем максимум 1\n\tif (props.isInvert) {\n\t\tvalue -= 1;\n\t\tmaximumValue -= 1;\n\t}\n\n\tconst height = maximumValue > 0 ? Math.round((value / maximumValue) * (100 - minHeight)) : 0;\n\tif (props.isInvert) return 100 - height;\n\n\treturn height + minHeight;\n};\n\nconst isActiveDate = (date: string) => props.activeDates.includes(date);\n\nconst maxValue = computed(() => Math.max(...props.values));\n\n/**\n * Из-за стиля .top-miniChart_chartGrid - direction: rtl\n */\nconst reversedDates = computed(() => props.dates.slice().reverse());\n\n/**\n * Кол-во пустых колонок\n */\nconst numOfEmptyCols = computed(() => {\n\tif (!props.dates.length) return 0;\n\n\treturn props.numberCols - props.dates.length;\n});\n\nconst resetModel = () => {\n\tmodel.value = null;\n};\n\nconst setModel = (e: Event, date: string, value: number | null) => {\n\tif (!(e.target instanceof HTMLElement)) return;\n\n\tmodel.value = {\n\t\telCol: e.target,\n\t\tdate: dateFormat(date),\n\t\tvalue: value === null ? '--' : value + (props.valueSuffix ?? ''),\n\t};\n};\n\n/**\n * Возвращает численный показатель динамики графика\n */\nconst localDynamic = computed(() => {\n\tlet dynamic = props.dynamic;\n\n\tif (typeof dynamic === 'undefined') {\n\t\tconst prevPeriodValue = props.values[props.keysForDyn.start];\n\t\tconst currentValue = props.values[props.keysForDyn.end];\n\t\tdynamic = currentValue - prevPeriodValue;\n\t}\n\n\tconst sign = dynamic < 0 ? -1 : 1;\n\n\treturn sign * (percentOfNumber(Math.abs(dynamic)) as number);\n});\n\nconst dynamicDirection = computed(() => {\n\tlet direction: 'up' | 'stay' | 'down' = 'stay';\n\n\tif (!props.isInvert) {\n\t\tif (localDynamic.value > 0) direction = 'up';\n\t\tif (localDynamic.value < 0) direction = 'down';\n\t} else {\n\t\tif (localDynamic.value > 0) direction = 'down';\n\t\tif (localDynamic.value < 0) direction = 'up';\n\t}\n\n\treturn direction;\n});\n\n</script>\n\n<template>\n\t<div\n\t\t:class=\"{\n\t\t\t['top-miniChart']: true,\n\t\t\t['top-miniChart_hideChartInMobile']: hideChartInMobile,\n\t\t\t[`top-color_${color}`]: true\n\t\t}\"\n\t>\n\t\t<div\n\t\t\tclass=\"top-miniChart_title top-ellipsis\"\n\t\t\t:data-top-icon=\"gIcon\"\n\t\t>\n\t\t\t{{ title }}\n\t\t</div>\n\n\t\t<div class=\"top-miniChart_chart\">\n\t\t\t<div\n\t\t\t\tclass=\"top-miniChart_chartGrid\"\n\t\t\t\t@mouseleave=\"resetModel()\"\n\t\t\t>\n\t\t\t\t<div\n\t\t\t\t\tv-for=\"(date, i) in reversedDates\"\n\t\t\t\t\t:class=\"{\n\t\t\t\t\t\t['top-miniChart_chartGridCol']: true,\n\t\t\t\t\t\t['top-active']: isActiveDate(date)\n\t\t\t\t\t}\"\n\t\t\t\t\t@mouseenter=\"setModel($event, date, values[values.length - i - 1])\"\n\t\t\t\t>\n\t\t\t\t\t<div :style=\"'height:' + genColHeight(values[values.length - i - 1]) + '%'\"/>\n\t\t\t\t</div>\n\t\t\t\t<div\n\t\t\t\t\tv-for=\"() in numOfEmptyCols\"\n\t\t\t\t\tclass=\"top-miniChart_chartGridCol top-miniChart_chartGridCol-none\"\n\t\t\t\t\t@mouseenter=\"resetModel()\"\n\t\t\t\t>\n\t\t\t\t\t<div></div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\n\t\t<div class=\"top-miniChart_data\">\n\t\t\t<span :class=\"{\n\t\t\t\t['top-miniChart_dataDynamic']: true,\n\t\t\t\t[`top-miniChart_dataDynamic-direction_${dynamicDirection}`]: true,\n\t\t\t}\">\n\t\t\t\t{{ Math.abs(localDynamic) || '' }}\n\t\t\t</span>\n\t\t\t<span class=\"top-miniChart_dataValue\">\n\t\t\t\t{{ percentOfNumber(values[values.length - 1]) || 0 }}\n\t\t\t</span>\n\t\t</div>\n\n\t\t<div\n\t\t\tv-if=\"additionalHTML\"\n\t\t\tv-html=\"additionalHTML\"\n\t\t/>\n\t</div>\n\n</template>\n<style>\n@import \"./styles/miniChart.css\";\n</style>\n","<script setup lang=\"ts\">\nimport { computed, onMounted, onUnmounted, ref, watch } from 'vue';\nimport type { Props, Style } from './miniCharts';\n\nconst props = defineProps<Props>();\nconst model = defineModel<Props['modelValue']>();\n\nconst elRef = ref<HTMLElement | null>(null);\n\nlet pagesResizeObserver: ResizeObserver;\n\n/**\n * Количество страниц\n */\nconst countPages = ref(1);\n\n/**\n * Активная страница\n */\nconst activePage = ref(1);\n\n/**\n * Установка количества страниц в блоке\n */\nconst setCountPages = () => {\n\tcountPages.value = Math.round(elRef.value!.scrollHeight / elRef.value!.clientHeight);\n};\n\nwatch(countPages, () => {\n\tif (countPages.value < activePage.value) {\n\t\tactivePage.value = 1;\n\t}\n});\n\nwatch(\n\t() => props.countCharts,\n\t() => setCountPages(),\n\t{ flush: 'post' },\n);\n\n/**\n * Расчет положения для подсказки\n */\nconst tooltipStyle = computed(() => {\n\tif (!model.value) return {};\n\n\tconst box = model.value.elCol.getBoundingClientRect();\n\n\tconst style: Style = {\n\t\ttop: box.bottom + window.scrollY + 'px',\n\t};\n\n\tif (document.documentElement.clientWidth / 2 > box.right) {\n\t\tstyle.left = box.right + window.scrollX + 10 + 'px';\n\t} else {\n\t\tstyle.left = box.left + window.scrollX - 10 + 'px';\n\t\tstyle.transform = 'translate(-100%, 0)';\n\t}\n\n\treturn style;\n});\n\nonMounted(() => {\n\t/**\n\t * Функционал переключения экранов графиков\n\t */\n\tpagesResizeObserver = new ResizeObserver(() => setCountPages());\n\tpagesResizeObserver.observe(elRef.value!);\n\n\twatch(activePage, () => {\n\t\tconst elMiniChart = elRef.value!.children[0];\n\t\tconst pageHeight = elMiniChart.clientHeight + parseInt(window.getComputedStyle(elRef.value!).getPropertyValue('row-gap'));\n\t\tconst scrollTop = pageHeight * (activePage.value - 1);\n\n\t\telRef.value!.scrollTo({ top: scrollTop, behavior: 'smooth' });\n\t});\n});\n\nonUnmounted(() => {\n\tpagesResizeObserver.disconnect();\n});\n</script>\n\n<template>\n\t<div\n\t\tclass=\"top-miniCharts\"\n\t\t:class=\"{\n\t\t\t['top-miniCharts']: true,\n\t\t\t['scrollable']: countPages > 1,\n\t\t\t['top-miniCharts_hideChartInMobile']: hideChartInMobile,\n\t\t}\"\n\t\tref=\"elRef\"\n\t>\n\n\t\t<slot></slot>\n\n\t\t<div\n\t\t\tv-if=\"countPages > 1\"\n\t\t\tclass=\"top-miniCharts_pages\"\n\t\t>\n\t\t\t<span\n\t\t\t\tv-for=\"n in countPages\"\n\t\t\t\t:class=\"{['top-active']: n === activePage}\"\n\t\t\t\t@click=\"activePage = n\"\n\t\t\t></span>\n\t\t</div>\n\n\t\t<Teleport to=\"body\">\n\t\t\t<div\n\t\t\t\tv-if=\"model\"\n\t\t\t\tclass=\"top-miniCharts_tooltip\"\n\t\t\t\t:style=\"tooltipStyle\"\n\t\t\t>\n\t\t\t\t<span>{{ model.date }}</span>\n\t\t\t\t<span>{{ model.value }}</span>\n\t\t\t</div>\n\t\t</Teleport>\n\t</div>\n\n</template>\n\n<style>\n@import \"./styles/miniCharts.css\";\n</style>\n"]}
|
package/charts/charts.js
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
_autoloadCSSCore.insertCSSLinkToPage(fileNames, true);
|
|
6
6
|
/* end import css */
|
|
7
7
|
|
|
8
|
-
import { _ as e } from "../.chunks/forms-
|
|
8
|
+
import { _ as e } from "../.chunks/forms-CY5MOh7a.esm.js";
|
|
9
9
|
import { percentOfNumber as t } from "../utils/number.js";
|
|
10
10
|
import { Fragment as n, Teleport as r, computed as i, createBlock as a, createCommentVNode as o, createElementBlock as s, createElementVNode as c, defineComponent as l, mergeModels as u, normalizeClass as d, normalizeStyle as f, onMounted as p, onUnmounted as m, openBlock as h, ref as g, renderList as _, renderSlot as v, toDisplayString as y, unref as b, useModel as x, watch as S } from "vue";
|
|
11
11
|
//#region src/components/charts/miniChart/miniChart.vue?vue&type=script&setup=true&lang.ts
|
package/charts/charts.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"charts.js","names":[],"sources":["../../src/components/charts/miniChart/miniChart.vue","../../src/components/charts/miniChart/miniChart.vue","../../src/components/charts/miniCharts/miniCharts.vue","../../src/components/charts/miniCharts/miniCharts.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport type { Props } from './types';\nimport { computed } from 'vue';\nimport { dateFormat } from '@/core/utils/date';\nimport { percentOfNumber } from '@/core/utils/number';\nimport { defaultNumberCols, minHeight } from './utils/consts';\n\nconst props = withDefaults(defineProps<Props>(), {\n\tcolor: 'blue',\n\tnumberCols: defaultNumberCols,\n});\nconst model = defineModel<Props['modelValue']>();\n\n/**\n * Расчет высоты колонки (в процентах)\n */\nconst genColHeight = (value: number): number => {\n\tlet maximumValue = maxValue.value;\n\n\t// для графиков средней и медианной делаем максимум 1\n\tif (props.isInvert) {\n\t\tvalue -= 1;\n\t\tmaximumValue -= 1;\n\t}\n\n\tconst height = maximumValue > 0 ? Math.round((value / maximumValue) * (100 - minHeight)) : 0;\n\tif (props.isInvert) return 100 - height;\n\n\treturn height + minHeight;\n};\n\nconst isActiveDate = (date: string) => props.activeDates.includes(date);\n\nconst maxValue = computed(() => Math.max(...props.values));\n\n/**\n * Из-за стиля .top-miniChart_chartGrid - direction: rtl\n */\nconst reversedDates = computed(() => props.dates.slice().reverse());\n\n/**\n * Кол-во пустых колонок\n */\nconst numOfEmptyCols = computed(() => {\n\tif (!props.dates.length) return 0;\n\n\treturn props.numberCols - props.dates.length;\n});\n\nconst resetModel = () => {\n\tmodel.value = null;\n};\n\nconst setModel = (e: Event, date: string, value: number | null) => {\n\tif (!(e.target instanceof HTMLElement)) return;\n\n\tmodel.value = {\n\t\telCol: e.target,\n\t\tdate: dateFormat(date),\n\t\tvalue: value === null ? '--' : value + (props.valueSuffix ?? ''),\n\t};\n};\n\n/**\n * Возвращает численный показатель динамики графика\n */\nconst localDynamic = computed(() => {\n\tlet dynamic = props.dynamic;\n\n\tif (typeof dynamic === 'undefined') {\n\t\tconst prevPeriodValue = props.values[props.keysForDyn.start];\n\t\tconst currentValue = props.values[props.keysForDyn.end];\n\t\tdynamic = currentValue - prevPeriodValue;\n\t}\n\n\tconst sign = dynamic < 0 ? -1 : 1;\n\n\treturn sign * (percentOfNumber(Math.abs(dynamic)) as number);\n});\n\nconst dynamicDirection = computed(() => {\n\tlet direction: 'up' | 'stay' | 'down' = 'stay';\n\n\tif (!props.isInvert) {\n\t\tif (localDynamic.value > 0) direction = 'up';\n\t\tif (localDynamic.value < 0) direction = 'down';\n\t} else {\n\t\tif (localDynamic.value > 0) direction = 'down';\n\t\tif (localDynamic.value < 0) direction = 'up';\n\t}\n\n\treturn direction;\n});\n\n</script>\n\n<template>\n\t<div\n\t\t:class=\"{\n\t\t\t['top-miniChart']: true,\n\t\t\t['top-miniChart_hideChartInMobile']: hideChartInMobile,\n\t\t\t[`top-color_${color}`]: true\n\t\t}\"\n\t>\n\t\t<div\n\t\t\tclass=\"top-miniChart_title top-ellipsis\"\n\t\t\t:data-top-icon=\"gIcon\"\n\t\t>\n\t\t\t{{ title }}\n\t\t</div>\n\n\t\t<div class=\"top-miniChart_chart\">\n\t\t\t<div\n\t\t\t\tclass=\"top-miniChart_chartGrid\"\n\t\t\t\t@mouseleave=\"resetModel()\"\n\t\t\t>\n\t\t\t\t<div\n\t\t\t\t\tv-for=\"(date, i) in reversedDates\"\n\t\t\t\t\t:class=\"{\n\t\t\t\t\t\t['top-miniChart_chartGridCol']: true,\n\t\t\t\t\t\t['top-active']: isActiveDate(date)\n\t\t\t\t\t}\"\n\t\t\t\t\t@mouseenter=\"setModel($event, date, values[values.length - i - 1])\"\n\t\t\t\t>\n\t\t\t\t\t<div :style=\"'height:' + genColHeight(values[values.length - i - 1]) + '%'\"/>\n\t\t\t\t</div>\n\t\t\t\t<div\n\t\t\t\t\tv-for=\"() in numOfEmptyCols\"\n\t\t\t\t\tclass=\"top-miniChart_chartGridCol top-miniChart_chartGridCol-none\"\n\t\t\t\t\t@mouseenter=\"resetModel()\"\n\t\t\t\t>\n\t\t\t\t\t<div></div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\n\t\t<div class=\"top-miniChart_data\">\n\t\t\t<span :class=\"{\n\t\t\t\t['top-miniChart_dataDynamic']: true,\n\t\t\t\t[`top-miniChart_dataDynamic-direction_${dynamicDirection}`]: true,\n\t\t\t}\">\n\t\t\t\t{{ Math.abs(localDynamic) || '' }}\n\t\t\t</span>\n\t\t\t<span class=\"top-miniChart_dataValue\">\n\t\t\t\t{{ percentOfNumber(values[values.length - 1]) || 0 }}\n\t\t\t</span>\n\t\t</div>\n\n\t\t<div\n\t\t\tv-if=\"additionalHTML\"\n\t\t\tv-html=\"additionalHTML\"\n\t\t/>\n\t</div>\n\n</template>\n<style>\n@import \"./styles/miniChart.css\";\n</style>\n","<script setup lang=\"ts\">\nimport type { Props } from './types';\nimport { computed } from 'vue';\nimport { dateFormat } from '@/core/utils/date';\nimport { percentOfNumber } from '@/core/utils/number';\nimport { defaultNumberCols, minHeight } from './utils/consts';\n\nconst props = withDefaults(defineProps<Props>(), {\n\tcolor: 'blue',\n\tnumberCols: defaultNumberCols,\n});\nconst model = defineModel<Props['modelValue']>();\n\n/**\n * Расчет высоты колонки (в процентах)\n */\nconst genColHeight = (value: number): number => {\n\tlet maximumValue = maxValue.value;\n\n\t// для графиков средней и медианной делаем максимум 1\n\tif (props.isInvert) {\n\t\tvalue -= 1;\n\t\tmaximumValue -= 1;\n\t}\n\n\tconst height = maximumValue > 0 ? Math.round((value / maximumValue) * (100 - minHeight)) : 0;\n\tif (props.isInvert) return 100 - height;\n\n\treturn height + minHeight;\n};\n\nconst isActiveDate = (date: string) => props.activeDates.includes(date);\n\nconst maxValue = computed(() => Math.max(...props.values));\n\n/**\n * Из-за стиля .top-miniChart_chartGrid - direction: rtl\n */\nconst reversedDates = computed(() => props.dates.slice().reverse());\n\n/**\n * Кол-во пустых колонок\n */\nconst numOfEmptyCols = computed(() => {\n\tif (!props.dates.length) return 0;\n\n\treturn props.numberCols - props.dates.length;\n});\n\nconst resetModel = () => {\n\tmodel.value = null;\n};\n\nconst setModel = (e: Event, date: string, value: number | null) => {\n\tif (!(e.target instanceof HTMLElement)) return;\n\n\tmodel.value = {\n\t\telCol: e.target,\n\t\tdate: dateFormat(date),\n\t\tvalue: value === null ? '--' : value + (props.valueSuffix ?? ''),\n\t};\n};\n\n/**\n * Возвращает численный показатель динамики графика\n */\nconst localDynamic = computed(() => {\n\tlet dynamic = props.dynamic;\n\n\tif (typeof dynamic === 'undefined') {\n\t\tconst prevPeriodValue = props.values[props.keysForDyn.start];\n\t\tconst currentValue = props.values[props.keysForDyn.end];\n\t\tdynamic = currentValue - prevPeriodValue;\n\t}\n\n\tconst sign = dynamic < 0 ? -1 : 1;\n\n\treturn sign * (percentOfNumber(Math.abs(dynamic)) as number);\n});\n\nconst dynamicDirection = computed(() => {\n\tlet direction: 'up' | 'stay' | 'down' = 'stay';\n\n\tif (!props.isInvert) {\n\t\tif (localDynamic.value > 0) direction = 'up';\n\t\tif (localDynamic.value < 0) direction = 'down';\n\t} else {\n\t\tif (localDynamic.value > 0) direction = 'down';\n\t\tif (localDynamic.value < 0) direction = 'up';\n\t}\n\n\treturn direction;\n});\n\n</script>\n\n<template>\n\t<div\n\t\t:class=\"{\n\t\t\t['top-miniChart']: true,\n\t\t\t['top-miniChart_hideChartInMobile']: hideChartInMobile,\n\t\t\t[`top-color_${color}`]: true\n\t\t}\"\n\t>\n\t\t<div\n\t\t\tclass=\"top-miniChart_title top-ellipsis\"\n\t\t\t:data-top-icon=\"gIcon\"\n\t\t>\n\t\t\t{{ title }}\n\t\t</div>\n\n\t\t<div class=\"top-miniChart_chart\">\n\t\t\t<div\n\t\t\t\tclass=\"top-miniChart_chartGrid\"\n\t\t\t\t@mouseleave=\"resetModel()\"\n\t\t\t>\n\t\t\t\t<div\n\t\t\t\t\tv-for=\"(date, i) in reversedDates\"\n\t\t\t\t\t:class=\"{\n\t\t\t\t\t\t['top-miniChart_chartGridCol']: true,\n\t\t\t\t\t\t['top-active']: isActiveDate(date)\n\t\t\t\t\t}\"\n\t\t\t\t\t@mouseenter=\"setModel($event, date, values[values.length - i - 1])\"\n\t\t\t\t>\n\t\t\t\t\t<div :style=\"'height:' + genColHeight(values[values.length - i - 1]) + '%'\"/>\n\t\t\t\t</div>\n\t\t\t\t<div\n\t\t\t\t\tv-for=\"() in numOfEmptyCols\"\n\t\t\t\t\tclass=\"top-miniChart_chartGridCol top-miniChart_chartGridCol-none\"\n\t\t\t\t\t@mouseenter=\"resetModel()\"\n\t\t\t\t>\n\t\t\t\t\t<div></div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\n\t\t<div class=\"top-miniChart_data\">\n\t\t\t<span :class=\"{\n\t\t\t\t['top-miniChart_dataDynamic']: true,\n\t\t\t\t[`top-miniChart_dataDynamic-direction_${dynamicDirection}`]: true,\n\t\t\t}\">\n\t\t\t\t{{ Math.abs(localDynamic) || '' }}\n\t\t\t</span>\n\t\t\t<span class=\"top-miniChart_dataValue\">\n\t\t\t\t{{ percentOfNumber(values[values.length - 1]) || 0 }}\n\t\t\t</span>\n\t\t</div>\n\n\t\t<div\n\t\t\tv-if=\"additionalHTML\"\n\t\t\tv-html=\"additionalHTML\"\n\t\t/>\n\t</div>\n\n</template>\n<style>\n@import \"./styles/miniChart.css\";\n</style>\n","<script setup lang=\"ts\">\nimport { computed, onMounted, onUnmounted, ref, watch } from 'vue';\nimport type { Props, Style } from './miniCharts';\n\nconst props = defineProps<Props>();\nconst model = defineModel<Props['modelValue']>();\n\nconst elRef = ref<HTMLElement | null>(null);\n\nlet pagesResizeObserver: ResizeObserver;\n\n/**\n * Количество страниц\n */\nconst countPages = ref(1);\n\n/**\n * Активная страница\n */\nconst activePage = ref(1);\n\n/**\n * Установка количества страниц в блоке\n */\nconst setCountPages = () => {\n\tcountPages.value = Math.round(elRef.value!.scrollHeight / elRef.value!.clientHeight);\n};\n\nwatch(countPages, () => {\n\tif (countPages.value < activePage.value) {\n\t\tactivePage.value = 1;\n\t}\n});\n\nwatch(\n\t() => props.countCharts,\n\t() => setCountPages(),\n\t{ flush: 'post' },\n);\n\n/**\n * Расчет положения для подсказки\n */\nconst tooltipStyle = computed(() => {\n\tif (!model.value) return {};\n\n\tconst box = model.value.elCol.getBoundingClientRect();\n\n\tconst style: Style = {\n\t\ttop: box.bottom + window.scrollY + 'px',\n\t};\n\n\tif (document.documentElement.clientWidth / 2 > box.right) {\n\t\tstyle.left = box.right + window.scrollX + 10 + 'px';\n\t} else {\n\t\tstyle.left = box.left + window.scrollX - 10 + 'px';\n\t\tstyle.transform = 'translate(-100%, 0)';\n\t}\n\n\treturn style;\n});\n\nonMounted(() => {\n\t/**\n\t * Функционал переключения экранов графиков\n\t */\n\tpagesResizeObserver = new ResizeObserver(() => setCountPages());\n\tpagesResizeObserver.observe(elRef.value!);\n\n\twatch(activePage, () => {\n\t\tconst elMiniChart = elRef.value!.children[0];\n\t\tconst pageHeight = elMiniChart.clientHeight + parseInt(window.getComputedStyle(elRef.value!).getPropertyValue('row-gap'));\n\t\tconst scrollTop = pageHeight * (activePage.value - 1);\n\n\t\telRef.value!.scrollTo({ top: scrollTop, behavior: 'smooth' });\n\t});\n});\n\nonUnmounted(() => {\n\tpagesResizeObserver.disconnect();\n});\n</script>\n\n<template>\n\t<div\n\t\tclass=\"top-miniCharts\"\n\t\t:class=\"{\n\t\t\t['top-miniCharts']: true,\n\t\t\t['scrollable']: countPages > 1,\n\t\t\t['top-miniCharts_hideChartInMobile']: hideChartInMobile,\n\t\t}\"\n\t\tref=\"elRef\"\n\t>\n\n\t\t<slot></slot>\n\n\t\t<div\n\t\t\tv-if=\"countPages > 1\"\n\t\t\tclass=\"top-miniCharts_pages\"\n\t\t>\n\t\t\t<span\n\t\t\t\tv-for=\"n in countPages\"\n\t\t\t\t:class=\"{['top-active']: n === activePage}\"\n\t\t\t\t@click=\"activePage = n\"\n\t\t\t></span>\n\t\t</div>\n\n\t\t<Teleport to=\"body\">\n\t\t\t<div\n\t\t\t\tv-if=\"model\"\n\t\t\t\tclass=\"top-miniCharts_tooltip\"\n\t\t\t\t:style=\"tooltipStyle\"\n\t\t\t>\n\t\t\t\t<span>{{ model.date }}</span>\n\t\t\t\t<span>{{ model.value }}</span>\n\t\t\t</div>\n\t\t</Teleport>\n\t</div>\n\n</template>\n\n<style>\n@import \"./styles/miniCharts.css\";\n</style>\n","<script setup lang=\"ts\">\nimport { computed, onMounted, onUnmounted, ref, watch } from 'vue';\nimport type { Props, Style } from './miniCharts';\n\nconst props = defineProps<Props>();\nconst model = defineModel<Props['modelValue']>();\n\nconst elRef = ref<HTMLElement | null>(null);\n\nlet pagesResizeObserver: ResizeObserver;\n\n/**\n * Количество страниц\n */\nconst countPages = ref(1);\n\n/**\n * Активная страница\n */\nconst activePage = ref(1);\n\n/**\n * Установка количества страниц в блоке\n */\nconst setCountPages = () => {\n\tcountPages.value = Math.round(elRef.value!.scrollHeight / elRef.value!.clientHeight);\n};\n\nwatch(countPages, () => {\n\tif (countPages.value < activePage.value) {\n\t\tactivePage.value = 1;\n\t}\n});\n\nwatch(\n\t() => props.countCharts,\n\t() => setCountPages(),\n\t{ flush: 'post' },\n);\n\n/**\n * Расчет положения для подсказки\n */\nconst tooltipStyle = computed(() => {\n\tif (!model.value) return {};\n\n\tconst box = model.value.elCol.getBoundingClientRect();\n\n\tconst style: Style = {\n\t\ttop: box.bottom + window.scrollY + 'px',\n\t};\n\n\tif (document.documentElement.clientWidth / 2 > box.right) {\n\t\tstyle.left = box.right + window.scrollX + 10 + 'px';\n\t} else {\n\t\tstyle.left = box.left + window.scrollX - 10 + 'px';\n\t\tstyle.transform = 'translate(-100%, 0)';\n\t}\n\n\treturn style;\n});\n\nonMounted(() => {\n\t/**\n\t * Функционал переключения экранов графиков\n\t */\n\tpagesResizeObserver = new ResizeObserver(() => setCountPages());\n\tpagesResizeObserver.observe(elRef.value!);\n\n\twatch(activePage, () => {\n\t\tconst elMiniChart = elRef.value!.children[0];\n\t\tconst pageHeight = elMiniChart.clientHeight + parseInt(window.getComputedStyle(elRef.value!).getPropertyValue('row-gap'));\n\t\tconst scrollTop = pageHeight * (activePage.value - 1);\n\n\t\telRef.value!.scrollTo({ top: scrollTop, behavior: 'smooth' });\n\t});\n});\n\nonUnmounted(() => {\n\tpagesResizeObserver.disconnect();\n});\n</script>\n\n<template>\n\t<div\n\t\tclass=\"top-miniCharts\"\n\t\t:class=\"{\n\t\t\t['top-miniCharts']: true,\n\t\t\t['scrollable']: countPages > 1,\n\t\t\t['top-miniCharts_hideChartInMobile']: hideChartInMobile,\n\t\t}\"\n\t\tref=\"elRef\"\n\t>\n\n\t\t<slot></slot>\n\n\t\t<div\n\t\t\tv-if=\"countPages > 1\"\n\t\t\tclass=\"top-miniCharts_pages\"\n\t\t>\n\t\t\t<span\n\t\t\t\tv-for=\"n in countPages\"\n\t\t\t\t:class=\"{['top-active']: n === activePage}\"\n\t\t\t\t@click=\"activePage = n\"\n\t\t\t></span>\n\t\t</div>\n\n\t\t<Teleport to=\"body\">\n\t\t\t<div\n\t\t\t\tv-if=\"model\"\n\t\t\t\tclass=\"top-miniCharts_tooltip\"\n\t\t\t\t:style=\"tooltipStyle\"\n\t\t\t>\n\t\t\t\t<span>{{ model.date }}</span>\n\t\t\t\t<span>{{ model.value }}</span>\n\t\t\t</div>\n\t\t</Teleport>\n\t</div>\n\n</template>\n\n<style>\n@import \"./styles/miniCharts.css\";\n</style>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;EAOA,IAAM,IAAQ,GAIR,IAAQ,EAAgC,GAAA,YAAC,GAKzC,KAAgB,MAA0B;GAC/C,IAAI,IAAe,EAAS;GAG5B,AAAI,EAAM,aACT,KACA;GAGD,IAAM,IAAS,IAAe,IAAI,KAAK,MAAO,IAAQ,IAAiB,EAAgB,IAAI;GAG3F,OAFI,EAAM,WAAiB,MAAM,IAE1B,IAAA;EACR,GAEM,KAAgB,MAAiB,EAAM,YAAY,SAAS,CAAI,GAEhE,IAAW,QAAe,KAAK,IAAI,GAAG,EAAM,MAAM,CAAC,GAKnD,IAAgB,QAAe,EAAM,MAAM,MAAM,EAAE,QAAQ,CAAC,GAK5D,IAAiB,QACjB,EAAM,MAAM,SAEV,EAAM,aAAa,EAAM,MAAM,SAFN,CAGhC,GAEK,UAAmB;GACxB,EAAM,QAAQ;EACf,GAEM,KAAY,GAAU,GAAc,MAAyB;GAC5D,EAAE,kBAAkB,gBAE1B,EAAM,QAAQ;IACb,OAAO,EAAE;IACT,MAAM,EAAW,CAAI;IACrB,OAAO,MAAU,OAAO,OAAO,KAAS,EAAM,eAAe;GAC9D;EACD,GAKM,IAAe,QAAe;GACnC,IAAI,IAAU,EAAM;GAEpB,IAAW,MAAY,QAAa;IACnC,IAAM,IAAkB,EAAM,OAAO,EAAM,WAAW;IAEtD,IADqB,EAAM,OAAO,EAAM,WAAW,OAC1B;GAC1B;GAIA,QAFa,IAAU,IAAI,KAAK,KAEjB,EAAgB,KAAK,IAAI,CAAO,CAAC;EACjD,CAAC,GAEK,IAAmB,QAAe;GACvC,IAAI,IAAoC;GAUxC,OARK,EAAM,YAIN,EAAa,QAAQ,MAAG,IAAY,SACpC,EAAa,QAAQ,MAAG,IAAY,UAJpC,EAAa,QAAQ,MAAG,IAAY,OACpC,EAAa,QAAQ,MAAG,IAAY,UAMlC;EACR,CAAC;yBAKA,EAuDM,OAAA,EAtDJ,OAAK,EAAA;;sCAAwE,EAAA;iBAAoC,EAAA,UAAK;;GAMvH,EAKM,OAAA;IAJL,OAAM;IACL,iBAAe,EAAA;QAEb,EAAA,KAAK,GAAA,GAAA,CAAA;GAGT,EAuBM,OAvBN,GAuBM,CAtBL,EAqBM,OAAA;IApBL,OAAM;IACL,cAAU,AAAA,EAAA,QAAA,MAAE,EAAU;eAEvB,EASM,GAAA,MAAA,EARe,EAAA,QAAZ,GAAM,YADf,EASM,OAAA;IAPJ,OAAK,EAAA;;mBAAsE,EAAa,CAAI;;IAI5F,eAAU,MAAE,EAAS,GAAQ,GAAM,EAAA,OAAO,EAAA,OAAO,SAAS,IAAC,EAAA;OAE5D,EAA6E,OAAA,EAAvE,OAAK,EAAA,YAAc,EAAa,EAAA,OAAO,EAAA,OAAO,SAAS,IAAC,EAAA,IAAA,GAAA,EAAA,GAAA,MAAA,CAAA,CAAA,GAAA,IAAA,CAAA,oBAE/D,EAMM,GAAA,MAAA,EALQ,EAAA,mBADd,EAMM,OAAA;IAJL,OAAM;IACL,cAAU,AAAA,EAAA,QAAA,MAAE,EAAU;oBAEvB,EAAW,OAAA,MAAA,MAAA,EAAA,CAAA,CAAA,GAAA,EAAA;GAKd,EAUM,OAVN,GAUM,CATL,EAKO,QAAA,EALA,OAAK,EAAA;;4CAAyF,EAAA,UAAgB;WAIjH,KAAK,IAAI,EAAA,KAAY,KAAA,EAAA,GAAA,CAAA,GAEzB,EAEO,QAFP,GAEO,EADH,EAAA,CAAA,EAAgB,EAAA,OAAO,EAAA,OAAO,SAAM,EAAA,KAAA,CAAA,GAAA,CAAA,CAAA,CAAA;GAKlC,EAAA,kBAAA,EAAA,GADP,EAGE,OAAA;;IADD,WAAQ,EAAA;;;;;;;;;;;;;;;;;;;EElJX,IAAM,IAAQ,GACR,IAAQ,EAAgC,GAAA,YAAC,GAEzC,IAAQ,EAAwB,IAAI,GAEtC,GAKE,IAAa,EAAI,CAAC,GAKlB,IAAa,EAAI,CAAC,GAKlB,UAAsB;GAC3B,EAAW,QAAQ,KAAK,MAAM,EAAM,MAAO,eAAe,EAAM,MAAO,YAAY;EACpF;EAQA,AANA,EAAM,SAAkB;GACvB,AAAI,EAAW,QAAQ,EAAW,UACjC,EAAW,QAAQ;EAErB,CAAC,GAED,QACO,EAAM,mBACN,EAAc,GACpB,EAAE,OAAO,OAAO,CACjB;EAKA,IAAM,IAAe,QAAe;GACnC,IAAI,CAAC,EAAM,OAAO,OAAO,CAAC;GAE1B,IAAM,IAAM,EAAM,MAAM,MAAM,sBAAsB,GAE9C,IAAe,EACpB,KAAK,EAAI,SAAS,OAAO,UAAU,KACpC;GASA,OAPI,SAAS,gBAAgB,cAAc,IAAI,EAAI,QAClD,EAAM,OAAO,EAAI,QAAQ,OAAO,UAAU,KAAK,QAE/C,EAAM,OAAO,EAAI,OAAO,OAAO,UAAU,KAAK,MAC9C,EAAM,YAAY,wBAGZ;EACR,CAAC;SAED,QAAgB;GAOf,AAHA,IAAsB,IAAI,qBAAqB,EAAc,CAAC,GAC9D,EAAoB,QAAQ,EAAM,KAAM,GAExC,EAAM,SAAkB;IAGvB,IAAM,KAFc,EAAM,MAAO,SAAS,GACX,eAAe,SAAS,OAAO,iBAAiB,EAAM,KAAM,EAAE,iBAAiB,SAAS,CAAC,MACxF,EAAW,QAAQ;IAEnD,EAAM,MAAO,SAAS;KAAE,KAAK;KAAW,UAAU;IAAS,CAAC;GAC7D,CAAC;EACF,CAAC,GAED,QAAkB;GACjB,EAAoB,WAAW;EAChC,CAAC,mBAIA,EAiCM,OAAA;GAhCL,OAAK,EAAA,CAAC,kBAAgB;;gBACoC,EAAA,QAAU;wCAA+C,EAAA;;YAK/G;GAAJ,KAAI;;GAGJ,EAAa,EAAA,QAAA,SAAA;GAGN,EAAA,QAAU,KAAA,EAAA,GADjB,EASM,OATN,GASM,EAAA,EAAA,EAAA,GALL,EAIQ,GAAA,MAAA,EAHK,EAAA,QAAL,YADR,EAIQ,QAAA;IAFN,OAAK,EAAA,EAAA,cAAmB,MAAM,EAAA,MAAU,CAAA;IACxC,UAAK,MAAE,EAAA,QAAa;;SAIvB,EASW,GAAA,EATD,IAAG,OAAM,GAAA,CAEX,EAAA,SAAA,EAAA,GADP,EAOM,OAAA;;IALL,OAAM;IACL,OAAK,EAAE,EAAA,KAAY;OAEpB,EAA6B,QAAA,MAAA,EAApB,EAAA,MAAM,IAAI,GAAA,CAAA,GACnB,EAA8B,QAAA,MAAA,EAArB,EAAA,MAAM,KAAK,GAAA,CAAA,CAAA,GAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,CAAA"}
|
|
1
|
+
{"version":3,"file":"charts.js","names":[],"sources":["../../src/components/charts/miniChart/miniChart.vue","../../src/components/charts/miniChart/miniChart.vue","../../src/components/charts/miniCharts/miniCharts.vue","../../src/components/charts/miniCharts/miniCharts.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport type { Props } from './types';\nimport { computed } from 'vue';\nimport { dateFormat } from '@/core/utils/date';\nimport { percentOfNumber } from '@/core/utils/number';\nimport { defaultNumberCols, minHeight } from './utils/consts';\n\nconst props = withDefaults(defineProps<Props>(), {\n\tcolor: 'blue',\n\tnumberCols: defaultNumberCols,\n});\nconst model = defineModel<Props['modelValue']>();\n\n/**\n * Расчет высоты колонки (в процентах)\n */\nconst genColHeight = (value: number): number => {\n\tlet maximumValue = maxValue.value;\n\n\t// для графиков средней и медианной делаем максимум 1\n\tif (props.isInvert) {\n\t\tvalue -= 1;\n\t\tmaximumValue -= 1;\n\t}\n\n\tconst height = maximumValue > 0 ? Math.round((value / maximumValue) * (100 - minHeight)) : 0;\n\tif (props.isInvert) return 100 - height;\n\n\treturn height + minHeight;\n};\n\nconst isActiveDate = (date: string) => props.activeDates.includes(date);\n\nconst maxValue = computed(() => Math.max(...props.values));\n\n/**\n * Из-за стиля .top-miniChart_chartGrid - direction: rtl\n */\nconst reversedDates = computed(() => props.dates.slice().reverse());\n\n/**\n * Кол-во пустых колонок\n */\nconst numOfEmptyCols = computed(() => {\n\tif (!props.dates.length) return 0;\n\n\treturn props.numberCols - props.dates.length;\n});\n\nconst resetModel = () => {\n\tmodel.value = null;\n};\n\nconst setModel = (e: Event, date: string, value: number | null) => {\n\tif (!(e.target instanceof HTMLElement)) return;\n\n\tmodel.value = {\n\t\telCol: e.target,\n\t\tdate: dateFormat(date),\n\t\tvalue: value === null ? '--' : value + (props.valueSuffix ?? ''),\n\t};\n};\n\n/**\n * Возвращает численный показатель динамики графика\n */\nconst localDynamic = computed(() => {\n\tlet dynamic = props.dynamic;\n\n\tif (typeof dynamic === 'undefined') {\n\t\tconst prevPeriodValue = props.values[props.keysForDyn.start];\n\t\tconst currentValue = props.values[props.keysForDyn.end];\n\t\tdynamic = currentValue - prevPeriodValue;\n\t}\n\n\tconst sign = dynamic < 0 ? -1 : 1;\n\n\treturn sign * (percentOfNumber(Math.abs(dynamic)) as number);\n});\n\nconst dynamicDirection = computed(() => {\n\tlet direction: 'up' | 'stay' | 'down' = 'stay';\n\n\tif (!props.isInvert) {\n\t\tif (localDynamic.value > 0) direction = 'up';\n\t\tif (localDynamic.value < 0) direction = 'down';\n\t} else {\n\t\tif (localDynamic.value > 0) direction = 'down';\n\t\tif (localDynamic.value < 0) direction = 'up';\n\t}\n\n\treturn direction;\n});\n\n</script>\n\n<template>\n\t<div\n\t\t:class=\"{\n\t\t\t['top-miniChart']: true,\n\t\t\t['top-miniChart_hideChartInMobile']: hideChartInMobile,\n\t\t\t[`top-color_${color}`]: true\n\t\t}\"\n\t>\n\t\t<div\n\t\t\tclass=\"top-miniChart_title top-ellipsis\"\n\t\t\t:data-top-icon=\"gIcon\"\n\t\t>\n\t\t\t{{ title }}\n\t\t</div>\n\n\t\t<div class=\"top-miniChart_chart\">\n\t\t\t<div\n\t\t\t\tclass=\"top-miniChart_chartGrid\"\n\t\t\t\t@mouseleave=\"resetModel()\"\n\t\t\t>\n\t\t\t\t<div\n\t\t\t\t\tv-for=\"(date, i) in reversedDates\"\n\t\t\t\t\t:class=\"{\n\t\t\t\t\t\t['top-miniChart_chartGridCol']: true,\n\t\t\t\t\t\t['top-active']: isActiveDate(date)\n\t\t\t\t\t}\"\n\t\t\t\t\t@mouseenter=\"setModel($event, date, values[values.length - i - 1])\"\n\t\t\t\t>\n\t\t\t\t\t<div :style=\"'height:' + genColHeight(values[values.length - i - 1]) + '%'\"/>\n\t\t\t\t</div>\n\t\t\t\t<div\n\t\t\t\t\tv-for=\"() in numOfEmptyCols\"\n\t\t\t\t\tclass=\"top-miniChart_chartGridCol top-miniChart_chartGridCol-none\"\n\t\t\t\t\t@mouseenter=\"resetModel()\"\n\t\t\t\t>\n\t\t\t\t\t<div></div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\n\t\t<div class=\"top-miniChart_data\">\n\t\t\t<span :class=\"{\n\t\t\t\t['top-miniChart_dataDynamic']: true,\n\t\t\t\t[`top-miniChart_dataDynamic-direction_${dynamicDirection}`]: true,\n\t\t\t}\">\n\t\t\t\t{{ Math.abs(localDynamic) || '' }}\n\t\t\t</span>\n\t\t\t<span class=\"top-miniChart_dataValue\">\n\t\t\t\t{{ percentOfNumber(values[values.length - 1]) || 0 }}\n\t\t\t</span>\n\t\t</div>\n\n\t\t<div\n\t\t\tv-if=\"additionalHTML\"\n\t\t\tv-html=\"additionalHTML\"\n\t\t/>\n\t</div>\n\n</template>\n<style>\n@import \"./styles/miniChart.css\";\n</style>\n","<script setup lang=\"ts\">\nimport type { Props } from './types';\nimport { computed } from 'vue';\nimport { dateFormat } from '@/core/utils/date';\nimport { percentOfNumber } from '@/core/utils/number';\nimport { defaultNumberCols, minHeight } from './utils/consts';\n\nconst props = withDefaults(defineProps<Props>(), {\n\tcolor: 'blue',\n\tnumberCols: defaultNumberCols,\n});\nconst model = defineModel<Props['modelValue']>();\n\n/**\n * Расчет высоты колонки (в процентах)\n */\nconst genColHeight = (value: number): number => {\n\tlet maximumValue = maxValue.value;\n\n\t// для графиков средней и медианной делаем максимум 1\n\tif (props.isInvert) {\n\t\tvalue -= 1;\n\t\tmaximumValue -= 1;\n\t}\n\n\tconst height = maximumValue > 0 ? Math.round((value / maximumValue) * (100 - minHeight)) : 0;\n\tif (props.isInvert) return 100 - height;\n\n\treturn height + minHeight;\n};\n\nconst isActiveDate = (date: string) => props.activeDates.includes(date);\n\nconst maxValue = computed(() => Math.max(...props.values));\n\n/**\n * Из-за стиля .top-miniChart_chartGrid - direction: rtl\n */\nconst reversedDates = computed(() => props.dates.slice().reverse());\n\n/**\n * Кол-во пустых колонок\n */\nconst numOfEmptyCols = computed(() => {\n\tif (!props.dates.length) return 0;\n\n\treturn props.numberCols - props.dates.length;\n});\n\nconst resetModel = () => {\n\tmodel.value = null;\n};\n\nconst setModel = (e: Event, date: string, value: number | null) => {\n\tif (!(e.target instanceof HTMLElement)) return;\n\n\tmodel.value = {\n\t\telCol: e.target,\n\t\tdate: dateFormat(date),\n\t\tvalue: value === null ? '--' : value + (props.valueSuffix ?? ''),\n\t};\n};\n\n/**\n * Возвращает численный показатель динамики графика\n */\nconst localDynamic = computed(() => {\n\tlet dynamic = props.dynamic;\n\n\tif (typeof dynamic === 'undefined') {\n\t\tconst prevPeriodValue = props.values[props.keysForDyn.start];\n\t\tconst currentValue = props.values[props.keysForDyn.end];\n\t\tdynamic = currentValue - prevPeriodValue;\n\t}\n\n\tconst sign = dynamic < 0 ? -1 : 1;\n\n\treturn sign * (percentOfNumber(Math.abs(dynamic)) as number);\n});\n\nconst dynamicDirection = computed(() => {\n\tlet direction: 'up' | 'stay' | 'down' = 'stay';\n\n\tif (!props.isInvert) {\n\t\tif (localDynamic.value > 0) direction = 'up';\n\t\tif (localDynamic.value < 0) direction = 'down';\n\t} else {\n\t\tif (localDynamic.value > 0) direction = 'down';\n\t\tif (localDynamic.value < 0) direction = 'up';\n\t}\n\n\treturn direction;\n});\n\n</script>\n\n<template>\n\t<div\n\t\t:class=\"{\n\t\t\t['top-miniChart']: true,\n\t\t\t['top-miniChart_hideChartInMobile']: hideChartInMobile,\n\t\t\t[`top-color_${color}`]: true\n\t\t}\"\n\t>\n\t\t<div\n\t\t\tclass=\"top-miniChart_title top-ellipsis\"\n\t\t\t:data-top-icon=\"gIcon\"\n\t\t>\n\t\t\t{{ title }}\n\t\t</div>\n\n\t\t<div class=\"top-miniChart_chart\">\n\t\t\t<div\n\t\t\t\tclass=\"top-miniChart_chartGrid\"\n\t\t\t\t@mouseleave=\"resetModel()\"\n\t\t\t>\n\t\t\t\t<div\n\t\t\t\t\tv-for=\"(date, i) in reversedDates\"\n\t\t\t\t\t:class=\"{\n\t\t\t\t\t\t['top-miniChart_chartGridCol']: true,\n\t\t\t\t\t\t['top-active']: isActiveDate(date)\n\t\t\t\t\t}\"\n\t\t\t\t\t@mouseenter=\"setModel($event, date, values[values.length - i - 1])\"\n\t\t\t\t>\n\t\t\t\t\t<div :style=\"'height:' + genColHeight(values[values.length - i - 1]) + '%'\"/>\n\t\t\t\t</div>\n\t\t\t\t<div\n\t\t\t\t\tv-for=\"() in numOfEmptyCols\"\n\t\t\t\t\tclass=\"top-miniChart_chartGridCol top-miniChart_chartGridCol-none\"\n\t\t\t\t\t@mouseenter=\"resetModel()\"\n\t\t\t\t>\n\t\t\t\t\t<div></div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\n\t\t<div class=\"top-miniChart_data\">\n\t\t\t<span :class=\"{\n\t\t\t\t['top-miniChart_dataDynamic']: true,\n\t\t\t\t[`top-miniChart_dataDynamic-direction_${dynamicDirection}`]: true,\n\t\t\t}\">\n\t\t\t\t{{ Math.abs(localDynamic) || '' }}\n\t\t\t</span>\n\t\t\t<span class=\"top-miniChart_dataValue\">\n\t\t\t\t{{ percentOfNumber(values[values.length - 1]) || 0 }}\n\t\t\t</span>\n\t\t</div>\n\n\t\t<div\n\t\t\tv-if=\"additionalHTML\"\n\t\t\tv-html=\"additionalHTML\"\n\t\t/>\n\t</div>\n\n</template>\n<style>\n@import \"./styles/miniChart.css\";\n</style>\n","<script setup lang=\"ts\">\nimport { computed, onMounted, onUnmounted, ref, watch } from 'vue';\nimport type { Props, Style } from './miniCharts';\n\nconst props = defineProps<Props>();\nconst model = defineModel<Props['modelValue']>();\n\nconst elRef = ref<HTMLElement | null>(null);\n\nlet pagesResizeObserver: ResizeObserver;\n\n/**\n * Количество страниц\n */\nconst countPages = ref(1);\n\n/**\n * Активная страница\n */\nconst activePage = ref(1);\n\n/**\n * Установка количества страниц в блоке\n */\nconst setCountPages = () => {\n\tcountPages.value = Math.round(elRef.value!.scrollHeight / elRef.value!.clientHeight);\n};\n\nwatch(countPages, () => {\n\tif (countPages.value < activePage.value) {\n\t\tactivePage.value = 1;\n\t}\n});\n\nwatch(\n\t() => props.countCharts,\n\t() => setCountPages(),\n\t{ flush: 'post' },\n);\n\n/**\n * Расчет положения для подсказки\n */\nconst tooltipStyle = computed(() => {\n\tif (!model.value) return {};\n\n\tconst box = model.value.elCol.getBoundingClientRect();\n\n\tconst style: Style = {\n\t\ttop: box.bottom + window.scrollY + 'px',\n\t};\n\n\tif (document.documentElement.clientWidth / 2 > box.right) {\n\t\tstyle.left = box.right + window.scrollX + 10 + 'px';\n\t} else {\n\t\tstyle.left = box.left + window.scrollX - 10 + 'px';\n\t\tstyle.transform = 'translate(-100%, 0)';\n\t}\n\n\treturn style;\n});\n\nonMounted(() => {\n\t/**\n\t * Функционал переключения экранов графиков\n\t */\n\tpagesResizeObserver = new ResizeObserver(() => setCountPages());\n\tpagesResizeObserver.observe(elRef.value!);\n\n\twatch(activePage, () => {\n\t\tconst elMiniChart = elRef.value!.children[0];\n\t\tconst pageHeight = elMiniChart.clientHeight + parseInt(window.getComputedStyle(elRef.value!).getPropertyValue('row-gap'));\n\t\tconst scrollTop = pageHeight * (activePage.value - 1);\n\n\t\telRef.value!.scrollTo({ top: scrollTop, behavior: 'smooth' });\n\t});\n});\n\nonUnmounted(() => {\n\tpagesResizeObserver.disconnect();\n});\n</script>\n\n<template>\n\t<div\n\t\tclass=\"top-miniCharts\"\n\t\t:class=\"{\n\t\t\t['top-miniCharts']: true,\n\t\t\t['scrollable']: countPages > 1,\n\t\t\t['top-miniCharts_hideChartInMobile']: hideChartInMobile,\n\t\t}\"\n\t\tref=\"elRef\"\n\t>\n\n\t\t<slot></slot>\n\n\t\t<div\n\t\t\tv-if=\"countPages > 1\"\n\t\t\tclass=\"top-miniCharts_pages\"\n\t\t>\n\t\t\t<span\n\t\t\t\tv-for=\"n in countPages\"\n\t\t\t\t:class=\"{['top-active']: n === activePage}\"\n\t\t\t\t@click=\"activePage = n\"\n\t\t\t></span>\n\t\t</div>\n\n\t\t<Teleport to=\"body\">\n\t\t\t<div\n\t\t\t\tv-if=\"model\"\n\t\t\t\tclass=\"top-miniCharts_tooltip\"\n\t\t\t\t:style=\"tooltipStyle\"\n\t\t\t>\n\t\t\t\t<span>{{ model.date }}</span>\n\t\t\t\t<span>{{ model.value }}</span>\n\t\t\t</div>\n\t\t</Teleport>\n\t</div>\n\n</template>\n\n<style>\n@import \"./styles/miniCharts.css\";\n</style>\n","<script setup lang=\"ts\">\nimport { computed, onMounted, onUnmounted, ref, watch } from 'vue';\nimport type { Props, Style } from './miniCharts';\n\nconst props = defineProps<Props>();\nconst model = defineModel<Props['modelValue']>();\n\nconst elRef = ref<HTMLElement | null>(null);\n\nlet pagesResizeObserver: ResizeObserver;\n\n/**\n * Количество страниц\n */\nconst countPages = ref(1);\n\n/**\n * Активная страница\n */\nconst activePage = ref(1);\n\n/**\n * Установка количества страниц в блоке\n */\nconst setCountPages = () => {\n\tcountPages.value = Math.round(elRef.value!.scrollHeight / elRef.value!.clientHeight);\n};\n\nwatch(countPages, () => {\n\tif (countPages.value < activePage.value) {\n\t\tactivePage.value = 1;\n\t}\n});\n\nwatch(\n\t() => props.countCharts,\n\t() => setCountPages(),\n\t{ flush: 'post' },\n);\n\n/**\n * Расчет положения для подсказки\n */\nconst tooltipStyle = computed(() => {\n\tif (!model.value) return {};\n\n\tconst box = model.value.elCol.getBoundingClientRect();\n\n\tconst style: Style = {\n\t\ttop: box.bottom + window.scrollY + 'px',\n\t};\n\n\tif (document.documentElement.clientWidth / 2 > box.right) {\n\t\tstyle.left = box.right + window.scrollX + 10 + 'px';\n\t} else {\n\t\tstyle.left = box.left + window.scrollX - 10 + 'px';\n\t\tstyle.transform = 'translate(-100%, 0)';\n\t}\n\n\treturn style;\n});\n\nonMounted(() => {\n\t/**\n\t * Функционал переключения экранов графиков\n\t */\n\tpagesResizeObserver = new ResizeObserver(() => setCountPages());\n\tpagesResizeObserver.observe(elRef.value!);\n\n\twatch(activePage, () => {\n\t\tconst elMiniChart = elRef.value!.children[0];\n\t\tconst pageHeight = elMiniChart.clientHeight + parseInt(window.getComputedStyle(elRef.value!).getPropertyValue('row-gap'));\n\t\tconst scrollTop = pageHeight * (activePage.value - 1);\n\n\t\telRef.value!.scrollTo({ top: scrollTop, behavior: 'smooth' });\n\t});\n});\n\nonUnmounted(() => {\n\tpagesResizeObserver.disconnect();\n});\n</script>\n\n<template>\n\t<div\n\t\tclass=\"top-miniCharts\"\n\t\t:class=\"{\n\t\t\t['top-miniCharts']: true,\n\t\t\t['scrollable']: countPages > 1,\n\t\t\t['top-miniCharts_hideChartInMobile']: hideChartInMobile,\n\t\t}\"\n\t\tref=\"elRef\"\n\t>\n\n\t\t<slot></slot>\n\n\t\t<div\n\t\t\tv-if=\"countPages > 1\"\n\t\t\tclass=\"top-miniCharts_pages\"\n\t\t>\n\t\t\t<span\n\t\t\t\tv-for=\"n in countPages\"\n\t\t\t\t:class=\"{['top-active']: n === activePage}\"\n\t\t\t\t@click=\"activePage = n\"\n\t\t\t></span>\n\t\t</div>\n\n\t\t<Teleport to=\"body\">\n\t\t\t<div\n\t\t\t\tv-if=\"model\"\n\t\t\t\tclass=\"top-miniCharts_tooltip\"\n\t\t\t\t:style=\"tooltipStyle\"\n\t\t\t>\n\t\t\t\t<span>{{ model.date }}</span>\n\t\t\t\t<span>{{ model.value }}</span>\n\t\t\t</div>\n\t\t</Teleport>\n\t</div>\n\n</template>\n\n<style>\n@import \"./styles/miniCharts.css\";\n</style>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;EAOA,IAAM,IAAQ,GAIR,IAAQ,EAAgC,GAAA,YAAC,GAKzC,KAAgB,MAA0B;GAC/C,IAAI,IAAe,EAAS;GAG5B,AAAI,EAAM,aACT,KACA;GAGD,IAAM,IAAS,IAAe,IAAI,KAAK,MAAO,IAAQ,IAAiB,EAAgB,IAAI;GAG3F,OAFI,EAAM,WAAiB,MAAM,IAE1B,IAAA;EACR,GAEM,KAAgB,MAAiB,EAAM,YAAY,SAAS,CAAI,GAEhE,IAAW,QAAe,KAAK,IAAI,GAAG,EAAM,MAAM,CAAC,GAKnD,IAAgB,QAAe,EAAM,MAAM,MAAM,CAAC,CAAC,QAAQ,CAAC,GAK5D,IAAiB,QACjB,EAAM,MAAM,SAEV,EAAM,aAAa,EAAM,MAAM,SAFN,CAGhC,GAEK,UAAmB;GACxB,EAAM,QAAQ;EACf,GAEM,KAAY,GAAU,GAAc,MAAyB;GAC5D,EAAE,kBAAkB,gBAE1B,EAAM,QAAQ;IACb,OAAO,EAAE;IACT,MAAM,EAAW,CAAI;IACrB,OAAO,MAAU,OAAO,OAAO,KAAS,EAAM,eAAe;GAC9D;EACD,GAKM,IAAe,QAAe;GACnC,IAAI,IAAU,EAAM;GAEpB,IAAW,MAAY,QAAa;IACnC,IAAM,IAAkB,EAAM,OAAO,EAAM,WAAW;IAEtD,IADqB,EAAM,OAAO,EAAM,WAAW,OAC1B;GAC1B;GAIA,QAFa,IAAU,IAAI,KAAK,KAEjB,EAAgB,KAAK,IAAI,CAAO,CAAC;EACjD,CAAC,GAEK,IAAmB,QAAe;GACvC,IAAI,IAAoC;GAUxC,OARK,EAAM,YAIN,EAAa,QAAQ,MAAG,IAAY,SACpC,EAAa,QAAQ,MAAG,IAAY,UAJpC,EAAa,QAAQ,MAAG,IAAY,OACpC,EAAa,QAAQ,MAAG,IAAY,UAMlC;EACR,CAAC;yBAKA,EAuDM,OAAA,EAtDJ,OAAK,EAAA;;sCAAwE,EAAA;iBAAoC,EAAA,UAAK;;GAMvH,EAKM,OAAA;IAJL,OAAM;IACL,iBAAe,EAAA;QAEb,EAAA,KAAK,GAAA,GAAA,CAAA;GAGT,EAuBM,OAvBN,GAuBM,CAtBL,EAqBM,OAAA;IApBL,OAAM;IACL,cAAU,AAAA,EAAA,QAAA,MAAE,EAAU;eAEvB,EASM,GAAA,MAAA,EARe,EAAA,QAAZ,GAAM,YADf,EASM,OAAA;IAPJ,OAAK,EAAA;;mBAAsE,EAAa,CAAI;;IAI5F,eAAU,MAAE,EAAS,GAAQ,GAAM,EAAA,OAAO,EAAA,OAAO,SAAS,IAAC,EAAA;OAE5D,EAA6E,OAAA,EAAvE,OAAK,EAAA,YAAc,EAAa,EAAA,OAAO,EAAA,OAAO,SAAS,IAAC,EAAA,IAAA,GAAA,EAAA,GAAA,MAAA,CAAA,CAAA,GAAA,IAAA,CAAA,oBAE/D,EAMM,GAAA,MAAA,EALQ,EAAA,mBADd,EAMM,OAAA;IAJL,OAAM;IACL,cAAU,AAAA,EAAA,QAAA,MAAE,EAAU;oBAEvB,EAAW,OAAA,MAAA,MAAA,EAAA,CAAA,CAAA,GAAA,EAAA;GAKd,EAUM,OAVN,GAUM,CATL,EAKO,QAAA,EALA,OAAK,EAAA;;4CAAyF,EAAA,UAAgB;WAIjH,KAAK,IAAI,EAAA,KAAY,KAAA,EAAA,GAAA,CAAA,GAEzB,EAEO,QAFP,GAEO,EADH,EAAA,CAAA,CAAe,CAAC,EAAA,OAAO,EAAA,OAAO,SAAM,EAAA,KAAA,CAAA,GAAA,CAAA,CAAA,CAAA;GAKlC,EAAA,kBAAA,EAAA,GADP,EAGE,OAAA;;IADD,WAAQ,EAAA;;;;;;;;;;;;;;;;;;;EElJX,IAAM,IAAQ,GACR,IAAQ,EAAgC,GAAA,YAAC,GAEzC,IAAQ,EAAwB,IAAI,GAEtC,GAKE,IAAa,EAAI,CAAC,GAKlB,IAAa,EAAI,CAAC,GAKlB,UAAsB;GAC3B,EAAW,QAAQ,KAAK,MAAM,EAAM,MAAO,eAAe,EAAM,MAAO,YAAY;EACpF;EAQA,AANA,EAAM,SAAkB;GACvB,AAAI,EAAW,QAAQ,EAAW,UACjC,EAAW,QAAQ;EAErB,CAAC,GAED,QACO,EAAM,mBACN,EAAc,GACpB,EAAE,OAAO,OAAO,CACjB;EAKA,IAAM,IAAe,QAAe;GACnC,IAAI,CAAC,EAAM,OAAO,OAAO,CAAC;GAE1B,IAAM,IAAM,EAAM,MAAM,MAAM,sBAAsB,GAE9C,IAAe,EACpB,KAAK,EAAI,SAAS,OAAO,UAAU,KACpC;GASA,OAPI,SAAS,gBAAgB,cAAc,IAAI,EAAI,QAClD,EAAM,OAAO,EAAI,QAAQ,OAAO,UAAU,KAAK,QAE/C,EAAM,OAAO,EAAI,OAAO,OAAO,UAAU,KAAK,MAC9C,EAAM,YAAY,wBAGZ;EACR,CAAC;SAED,QAAgB;GAOf,AAHA,IAAsB,IAAI,qBAAqB,EAAc,CAAC,GAC9D,EAAoB,QAAQ,EAAM,KAAM,GAExC,EAAM,SAAkB;IAGvB,IAAM,KAFc,EAAM,MAAO,SAAS,EACvB,CAAY,eAAe,SAAS,OAAO,iBAAiB,EAAM,KAAM,CAAC,CAAC,iBAAiB,SAAS,CAAC,MACxF,EAAW,QAAQ;IAEnD,EAAM,MAAO,SAAS;KAAE,KAAK;KAAW,UAAU;IAAS,CAAC;GAC7D,CAAC;EACF,CAAC,GAED,QAAkB;GACjB,EAAoB,WAAW;EAChC,CAAC,mBAIA,EAiCM,OAAA;GAhCL,OAAK,EAAA,CAAC,kBAAgB;;gBACoC,EAAA,QAAU;wCAA+C,EAAA;;YAK/G;GAAJ,KAAI;;GAGJ,EAAa,EAAA,QAAA,SAAA;GAGN,EAAA,QAAU,KAAA,EAAA,GADjB,EASM,OATN,GASM,EAAA,EAAA,EAAA,GALL,EAIQ,GAAA,MAAA,EAHK,EAAA,QAAL,YADR,EAIQ,QAAA;IAFN,OAAK,EAAA,EAAA,cAAmB,MAAM,EAAA,MAAU,CAAA;IACxC,UAAK,MAAE,EAAA,QAAa;;SAIvB,EASW,GAAA,EATD,IAAG,OAAM,GAAA,CAEX,EAAA,SAAA,EAAA,GADP,EAOM,OAAA;;IALL,OAAM;IACL,OAAK,EAAE,EAAA,KAAY;OAEpB,EAA6B,QAAA,MAAA,EAApB,EAAA,MAAM,IAAI,GAAA,CAAA,GACnB,EAA8B,QAAA,MAAA,EAArB,EAAA,MAAM,KAAK,GAAA,CAAA,CAAA,GAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,CAAA"}
|
package/core/app.amd.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
define([`require`,`exports`,`../.chunks/forms-
|
|
1
|
+
define([`require`,`exports`,`../.chunks/forms-CY5MOh7a.amd`,`../.chunks/app-DinkodXi.amd`,`../.chunks/utils-Be-ScFyj.amd`],function(e,t,n,r,i){"use strict";if(a===void 0)var a=window.Vue;Object.defineProperty(t,"__esModule",{value:!0}),t.useTopDialog=t.useI18nLang=t.useI18n=t.useAsyncTopDialog=t.piniaTPAPlugin=t.i18nPlugin=t.corePlugin=t.TopDialogWorker=t.Core=void 0,Object.defineProperty(t,"useI18nLang",{enumerable:!0,get:function(){return n.D}}),Object.defineProperty(t,"useI18n",{enumerable:!0,get:function(){return n.E}}),Object.defineProperty(t,"Core",{enumerable:!0,get:function(){return n.O}}),Object.defineProperty(t,"i18nPlugin",{enumerable:!0,get:function(){return n.T}}),Object.defineProperty(t,"corePlugin",{enumerable:!0,get:function(){return r.n}}),Object.defineProperty(t,"piniaTPAPlugin",{enumerable:!0,get:function(){return r.t}}),Object.defineProperty(t,"useTopDialog",{enumerable:!0,get:function(){return i.n}}),Object.defineProperty(t,"TopDialogWorker",{enumerable:!0,get:function(){return i.o}}),Object.defineProperty(t,"useAsyncTopDialog",{enumerable:!0,get:function(){return i.t}})});
|
|
2
2
|
//# sourceMappingURL=app.amd.js.map
|
package/core/app.amd.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["core/app.js"],"names":["vue","exports","
|
|
1
|
+
{"version":3,"sources":["core/app.js"],"names":["vue","exports","forms_CY5MOh7a_esm_js_1","app_DinkodXi_esm_js_1","utils_Be_ScFyj_esm_js_1"],"mappings":"AAAA,OAAO,CAAC,UAAW,UAAW,gCAAoC,8BAAkC,+BAAkC,EAAG,SAAU,EAAS,EAAS,EAAyB,EAAuB,EAAyB,CAC1O,aAAA,GAAAA,IAAA,OAAA,IAAAA,EAAA,OAAA,IACA,OAAO,eAAeC,EAAS,aAAc,CAAE,MAAO,EAAK,CAAC,EAC5D,EAAQ,aAAe,EAAQ,YAAc,EAAQ,QAAU,EAAQ,kBAAoB,EAAQ,eAAiB,EAAQ,WAAa,EAAQ,WAAa,EAAQ,gBAAkB,EAAQ,KAAO,IAAK,GAC5M,OAAO,eAAeA,EAAS,cAAe,CAAE,WAAY,GAAM,IAAK,UAAY,CAAE,OAAOC,EAAwB,CAAG,CAAE,CAAC,EAC1H,OAAO,eAAeD,EAAS,UAAW,CAAE,WAAY,GAAM,IAAK,UAAY,CAAE,OAAOC,EAAwB,CAAG,CAAE,CAAC,EACtH,OAAO,eAAeD,EAAS,OAAQ,CAAE,WAAY,GAAM,IAAK,UAAY,CAAE,OAAOC,EAAwB,CAAG,CAAE,CAAC,EACnH,OAAO,eAAeD,EAAS,aAAc,CAAE,WAAY,GAAM,IAAK,UAAY,CAAE,OAAOC,EAAwB,CAAG,CAAE,CAAC,EACzH,OAAO,eAAeD,EAAS,aAAc,CAAE,WAAY,GAAM,IAAK,UAAY,CAAE,OAAOE,EAAsB,CAAG,CAAE,CAAC,EACvH,OAAO,eAAeF,EAAS,iBAAkB,CAAE,WAAY,GAAM,IAAK,UAAY,CAAE,OAAOE,EAAsB,CAAG,CAAE,CAAC,EAC3H,OAAO,eAAeF,EAAS,eAAgB,CAAE,WAAY,GAAM,IAAK,UAAY,CAAE,OAAOG,EAAwB,CAAG,CAAE,CAAC,EAC3H,OAAO,eAAeH,EAAS,kBAAmB,CAAE,WAAY,GAAM,IAAK,UAAY,CAAE,OAAOG,EAAwB,CAAG,CAAE,CAAC,EAC9H,OAAO,eAAeH,EAAS,oBAAqB,CAAE,WAAY,GAAM,IAAK,UAAY,CAAE,OAAOG,EAAwB,CAAG,CAAE,CAAC,CACpI,CAAC","sourcesContent":["define([\"require\", \"exports\", \"../.chunks/forms-CY5MOh7a.esm.js\", \"../.chunks/app-DinkodXi.esm.js\", \"../.chunks/utils-Be-ScFyj.esm.js\"], function (require, exports, forms_CY5MOh7a_esm_js_1, app_DinkodXi_esm_js_1, utils_Be_ScFyj_esm_js_1) {\n \"use strict\";\n Object.defineProperty(exports, \"__esModule\", { value: true });\n exports.useTopDialog = exports.useI18nLang = exports.useI18n = exports.useAsyncTopDialog = exports.piniaTPAPlugin = exports.i18nPlugin = exports.corePlugin = exports.TopDialogWorker = exports.Core = void 0;\n Object.defineProperty(exports, \"useI18nLang\", { enumerable: true, get: function () { return forms_CY5MOh7a_esm_js_1.D; } });\n Object.defineProperty(exports, \"useI18n\", { enumerable: true, get: function () { return forms_CY5MOh7a_esm_js_1.E; } });\n Object.defineProperty(exports, \"Core\", { enumerable: true, get: function () { return forms_CY5MOh7a_esm_js_1.O; } });\n Object.defineProperty(exports, \"i18nPlugin\", { enumerable: true, get: function () { return forms_CY5MOh7a_esm_js_1.T; } });\n Object.defineProperty(exports, \"corePlugin\", { enumerable: true, get: function () { return app_DinkodXi_esm_js_1.n; } });\n Object.defineProperty(exports, \"piniaTPAPlugin\", { enumerable: true, get: function () { return app_DinkodXi_esm_js_1.t; } });\n Object.defineProperty(exports, \"useTopDialog\", { enumerable: true, get: function () { return utils_Be_ScFyj_esm_js_1.n; } });\n Object.defineProperty(exports, \"TopDialogWorker\", { enumerable: true, get: function () { return utils_Be_ScFyj_esm_js_1.o; } });\n Object.defineProperty(exports, \"useAsyncTopDialog\", { enumerable: true, get: function () { return utils_Be_ScFyj_esm_js_1.t; } });\n});\n"]}
|
package/core/app.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { D as e, E as t, O as n, T as r } from "../.chunks/forms-
|
|
2
|
-
import { n as i, t as a } from "../.chunks/app-
|
|
3
|
-
import { n as o, o as s, t as c } from "../.chunks/utils-
|
|
1
|
+
import { D as e, E as t, O as n, T as r } from "../.chunks/forms-CY5MOh7a.esm.js";
|
|
2
|
+
import { n as i, t as a } from "../.chunks/app-DinkodXi.esm.js";
|
|
3
|
+
import { n as o, o as s, t as c } from "../.chunks/utils-Be-ScFyj.esm.js";
|
|
4
4
|
export { n as Core, s as TopDialogWorker, i as corePlugin, r as i18nPlugin, a as piniaTPAPlugin, c as useAsyncTopDialog, t as useI18n, e as useI18nLang, o as useTopDialog };
|
package/dialog/dialog.amd.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
define([`require`,`exports`,`../.chunks/utils-
|
|
1
|
+
define([`require`,`exports`,`../.chunks/utils-Be-ScFyj.amd`,`../.chunks/dialog-BCDVMWG1.amd`],function(e,t,n,r){"use strict";if(i===void 0)var i=window.Vue;Object.defineProperty(t,"__esModule",{value:!0}),t.useTopDialogSelf=t.propsPageCommon=t.TopDialogPageComponent=t.TopDialogPage=t.TopDialog=void 0,Object.defineProperty(t,"useTopDialogSelf",{enumerable:!0,get:function(){return n.r}}),Object.defineProperty(t,"TopDialog",{enumerable:!0,get:function(){return n.s}}),Object.defineProperty(t,"propsPageCommon",{enumerable:!0,get:function(){return r.n}}),Object.defineProperty(t,"TopDialogPage",{enumerable:!0,get:function(){return r.r}}),Object.defineProperty(t,"TopDialogPageComponent",{enumerable:!0,get:function(){return r.t}})});
|
|
2
2
|
//# sourceMappingURL=dialog.amd.js.map
|
package/dialog/dialog.amd.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["dialog/dialog.js"],"names":["vue","exports","
|
|
1
|
+
{"version":3,"sources":["dialog/dialog.js"],"names":["vue","exports","utils_Be_ScFyj_esm_js_1","dialog_BCDVMWG1_esm_js_1"],"mappings":"AAAA,OAAO,CAAC,UAAW,UAAW,gCAAoC,gCAAmC,EAAG,SAAU,EAAS,EAAS,EAAyB,EAA0B,CACnL,aAAA,GAAAA,IAAA,OAAA,IAAAA,EAAA,OAAA,IACA,OAAO,eAAeC,EAAS,aAAc,CAAE,MAAO,EAAK,CAAC,EAC5D,EAAQ,iBAAmB,EAAQ,gBAAkB,EAAQ,uBAAyB,EAAQ,cAAgB,EAAQ,UAAY,IAAK,GACvI,OAAO,eAAeA,EAAS,mBAAoB,CAAE,WAAY,GAAM,IAAK,UAAY,CAAE,OAAOC,EAAwB,CAAG,CAAE,CAAC,EAC/H,OAAO,eAAeD,EAAS,YAAa,CAAE,WAAY,GAAM,IAAK,UAAY,CAAE,OAAOC,EAAwB,CAAG,CAAE,CAAC,EACxH,OAAO,eAAeD,EAAS,kBAAmB,CAAE,WAAY,GAAM,IAAK,UAAY,CAAE,OAAOE,EAAyB,CAAG,CAAE,CAAC,EAC/H,OAAO,eAAeF,EAAS,gBAAiB,CAAE,WAAY,GAAM,IAAK,UAAY,CAAE,OAAOE,EAAyB,CAAG,CAAE,CAAC,EAC7H,OAAO,eAAeF,EAAS,yBAA0B,CAAE,WAAY,GAAM,IAAK,UAAY,CAAE,OAAOE,EAAyB,CAAG,CAAE,CAAC,CAC1I,CAAC","sourcesContent":["define([\"require\", \"exports\", \"../.chunks/utils-Be-ScFyj.esm.js\", \"../.chunks/dialog-BCDVMWG1.esm.js\"], function (require, exports, utils_Be_ScFyj_esm_js_1, dialog_BCDVMWG1_esm_js_1) {\n \"use strict\";\n Object.defineProperty(exports, \"__esModule\", { value: true });\n exports.useTopDialogSelf = exports.propsPageCommon = exports.TopDialogPageComponent = exports.TopDialogPage = exports.TopDialog = void 0;\n Object.defineProperty(exports, \"useTopDialogSelf\", { enumerable: true, get: function () { return utils_Be_ScFyj_esm_js_1.r; } });\n Object.defineProperty(exports, \"TopDialog\", { enumerable: true, get: function () { return utils_Be_ScFyj_esm_js_1.s; } });\n Object.defineProperty(exports, \"propsPageCommon\", { enumerable: true, get: function () { return dialog_BCDVMWG1_esm_js_1.n; } });\n Object.defineProperty(exports, \"TopDialogPage\", { enumerable: true, get: function () { return dialog_BCDVMWG1_esm_js_1.r; } });\n Object.defineProperty(exports, \"TopDialogPageComponent\", { enumerable: true, get: function () { return dialog_BCDVMWG1_esm_js_1.t; } });\n});\n"]}
|
package/dialog/dialog.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { r as e, s as t } from "../.chunks/utils-
|
|
2
|
-
import { n, r, t as i } from "../.chunks/dialog-
|
|
1
|
+
import { r as e, s as t } from "../.chunks/utils-Be-ScFyj.esm.js";
|
|
2
|
+
import { n, r, t as i } from "../.chunks/dialog-BCDVMWG1.esm.js";
|
|
3
3
|
export { t as TopDialog, r as TopDialogPage, i as TopDialogPageComponent, n as propsPageCommon, e as useTopDialogSelf };
|
package/forms/forms.amd.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
define([`require`,`exports`,`../.chunks/forms-
|
|
1
|
+
define([`require`,`exports`,`../.chunks/forms-CY5MOh7a.amd`],function(e,t,n){"use strict";if(r===void 0)var r=window.Vue;Object.defineProperty(t,"__esModule",{value:!0}),t.TopTextarea=t.TopSwitcher=t.TopSelect=t.TopRadio=t.TopPreloader=t.TopLoadbar=t.TopInputRange=t.TopInputDate=t.TopInput=t.TopHint=t.TopControlLabel=t.TopCheckbox=t.TopCaption=t.TopButton=t.TopAvatar=void 0,Object.defineProperty(t,"TopRadio",{enumerable:!0,get:function(){return n.a}}),Object.defineProperty(t,"TopInput",{enumerable:!0,get:function(){return n.c}}),Object.defineProperty(t,"TopHint",{enumerable:!0,get:function(){return n.d}}),Object.defineProperty(t,"TopCheckbox",{enumerable:!0,get:function(){return n.f}}),Object.defineProperty(t,"TopAvatar",{enumerable:!0,get:function(){return n.g}}),Object.defineProperty(t,"TopButton",{enumerable:!0,get:function(){return n.h}}),Object.defineProperty(t,"TopSwitcher",{enumerable:!0,get:function(){return n.i}}),Object.defineProperty(t,"TopLoadbar",{enumerable:!0,get:function(){return n.l}}),Object.defineProperty(t,"TopCaption",{enumerable:!0,get:function(){return n.m}}),Object.defineProperty(t,"TopSelect",{enumerable:!0,get:function(){return n.n}}),Object.defineProperty(t,"TopInputRange",{enumerable:!0,get:function(){return n.o}}),Object.defineProperty(t,"TopControlLabel",{enumerable:!0,get:function(){return n.p}}),Object.defineProperty(t,"TopTextarea",{enumerable:!0,get:function(){return n.r}}),Object.defineProperty(t,"TopInputDate",{enumerable:!0,get:function(){return n.s}}),Object.defineProperty(t,"TopPreloader",{enumerable:!0,get:function(){return n.t}})});
|
|
2
2
|
//# sourceMappingURL=forms.amd.js.map
|