@milaboratories/milaboratories.ui-examples.model 1.2.23 → 1.2.24

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs CHANGED
@@ -48,11 +48,11 @@ var platforma = model.BlockModel.create("Heavy").withArgs({ numbers: [1, 2, 3, 4
48
48
  const sheets = [
49
49
  {
50
50
  axis: {
51
- type: "Int",
51
+ type: model.ValueType.Int,
52
52
  name: "part",
53
53
  annotations: {
54
- "pl7.app/label": "Partitioned axis",
55
- "pl7.app/discreteValues": "[0,1]"
54
+ [model.Annotation.Label]: "Partitioned axis",
55
+ [model.Annotation.DiscreteValues]: model.stringifyJson([0, 1])
56
56
  }
57
57
  },
58
58
  options: [
@@ -70,27 +70,27 @@ var platforma = model.BlockModel.create("Heavy").withArgs({ numbers: [1, 2, 3, 4
70
70
  id: "column1",
71
71
  spec: {
72
72
  kind: "PColumn",
73
- valueType: "String",
73
+ valueType: model.ValueType.String,
74
74
  name: "example",
75
75
  annotations: {
76
- "pl7.app/label": "String column",
77
- "pl7.app/discreteValues": '["up","down"]',
78
- "pl7.app/table/orderPriority": "101"
76
+ [model.Annotation.Label]: "String column",
77
+ [model.Annotation.DiscreteValues]: model.stringifyJson(["up", "down"]),
78
+ [model.Annotation.Table.OrderPriority]: model.stringifyJson(101)
79
79
  },
80
80
  axesSpec: [
81
81
  {
82
- type: "Int",
82
+ type: model.ValueType.Int,
83
83
  name: "part",
84
84
  annotations: {
85
- "pl7.app/label": "Partitioned axis",
86
- "pl7.app/discreteValues": "[0,1]"
85
+ [model.Annotation.Label]: "Partitioned axis",
86
+ [model.Annotation.DiscreteValues]: model.stringifyJson([0, 1])
87
87
  }
88
88
  },
89
89
  {
90
- type: "Int",
90
+ type: model.ValueType.Int,
91
91
  name: "index",
92
92
  annotations: {
93
- "pl7.app/label": "Int axis"
93
+ [model.Annotation.Label]: "Int axis"
94
94
  }
95
95
  }
96
96
  ]
@@ -107,27 +107,27 @@ var platforma = model.BlockModel.create("Heavy").withArgs({ numbers: [1, 2, 3, 4
107
107
  id: "column2",
108
108
  spec: {
109
109
  kind: "PColumn",
110
- valueType: "Float",
110
+ valueType: model.ValueType.Float,
111
111
  name: "value",
112
112
  annotations: {
113
- "pl7.app/label": "Float column",
114
- "pl7.app/table/visibility": "optional",
115
- "pl7.app/table/orderPriority": "100"
113
+ [model.Annotation.Label]: "Float column",
114
+ [model.Annotation.Table.Visibility]: "optional",
115
+ [model.Annotation.Table.OrderPriority]: model.stringifyJson(100)
116
116
  },
117
117
  axesSpec: [
118
118
  {
119
- type: "Int",
119
+ type: model.ValueType.Int,
120
120
  name: "part",
121
121
  annotations: {
122
- "pl7.app/label": "Partitioned axis",
123
- "pl7.app/discreteValues": "[0,1]"
122
+ [model.Annotation.Label]: "Partitioned axis",
123
+ [model.Annotation.DiscreteValues]: model.stringifyJson([0, 1])
124
124
  }
125
125
  },
126
126
  {
127
- type: "Int",
127
+ type: model.ValueType.Int,
128
128
  name: "index",
129
129
  annotations: {
130
- "pl7.app/label": "Int axis"
130
+ [model.Annotation.Label]: "Int axis"
131
131
  }
132
132
  }
133
133
  ]
@@ -144,17 +144,17 @@ var platforma = model.BlockModel.create("Heavy").withArgs({ numbers: [1, 2, 3, 4
144
144
  id: "labelColumn",
145
145
  spec: {
146
146
  kind: "PColumn",
147
- valueType: "Int",
148
- name: "pl7.app/label",
147
+ valueType: model.ValueType.Int,
148
+ name: model.PColumnName.Label,
149
149
  annotations: {
150
- "pl7.app/label": "Int axis labels"
150
+ [model.Annotation.Label]: "Int axis labels"
151
151
  },
152
152
  axesSpec: [
153
153
  {
154
- type: "Int",
154
+ type: model.ValueType.Int,
155
155
  name: "index",
156
156
  annotations: {
157
- "pl7.app/label": "Int axis"
157
+ [model.Annotation.Label]: "Int axis"
158
158
  }
159
159
  }
160
160
  ]
@@ -171,26 +171,26 @@ var platforma = model.BlockModel.create("Heavy").withArgs({ numbers: [1, 2, 3, 4
171
171
  id: "linkerColumn",
172
172
  spec: {
173
173
  kind: "PColumn",
174
- valueType: "Int",
174
+ valueType: model.ValueType.Int,
175
175
  name: "linker",
176
176
  annotations: {
177
- "pl7.app/label": "Index axis linker",
178
- "pl7.app/isLinkerColumn": "true",
179
- "pl7.app/table/visibility": "hidden"
177
+ [model.Annotation.Label]: "Index axis linker",
178
+ [model.Annotation.IsLinkerColumn]: model.stringifyJson(true),
179
+ [model.Annotation.Table.Visibility]: "hidden"
180
180
  },
181
181
  axesSpec: [
182
182
  {
183
- type: "Int",
183
+ type: model.ValueType.Int,
184
184
  name: "index",
185
185
  annotations: {
186
- "pl7.app/label": "Int axis"
186
+ [model.Annotation.Label]: "Int axis"
187
187
  }
188
188
  },
189
189
  {
190
- type: "Int",
190
+ type: model.ValueType.Int,
191
191
  name: "linkedIndex",
192
192
  annotations: {
193
- "pl7.app/label": "Linked int axis"
193
+ [model.Annotation.Label]: "Linked int axis"
194
194
  }
195
195
  }
196
196
  ]
@@ -209,19 +209,19 @@ var platforma = model.BlockModel.create("Heavy").withArgs({ numbers: [1, 2, 3, 4
209
209
  id: `alphabeticalColumn${j}`,
210
210
  spec: {
211
211
  kind: "PColumn",
212
- valueType: "String",
212
+ valueType: model.ValueType.String,
213
213
  name: "value",
214
214
  annotations: {
215
- "pl7.app/label": `Alphabetical column ${j}`,
216
- "pl7.app/table/visibility": "optional",
217
- "pl7.app/table/orderPriority": (10 - j).toString()
215
+ [model.Annotation.Label]: `Alphabetical column ${j}`,
216
+ [model.Annotation.Table.Visibility]: "optional",
217
+ [model.Annotation.Table.OrderPriority]: model.stringifyJson(10 - j)
218
218
  },
219
219
  axesSpec: [
220
220
  {
221
- type: "Int",
221
+ type: model.ValueType.Int,
222
222
  name: "linkedIndex",
223
223
  annotations: {
224
- "pl7.app/label": "Linked int axis"
224
+ [model.Annotation.Label]: "Linked int axis"
225
225
  }
226
226
  }
227
227
  ]
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts"],"names":["z","BlockModel","createPlDataTableStateV2","rowCount","createPlDataTableV2"],"mappings":"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","file":"index.cjs","sourcesContent":["import type {\n ImportFileHandle,\n InferHrefType,\n InferOutputsType,\n PColumn,\n PColumnValues,\n PObjectId,\n PlDataTableStateV2,\n PlDataTableSheet,\n} from '@platforma-sdk/model';\nimport {\n BlockModel,\n createPlDataTableStateV2,\n createPlDataTableV2,\n} from '@platforma-sdk/model';\nimport { z } from 'zod';\n\nexport const ImportFileHandleSchema = z\n .string()\n .optional()\n .refine<ImportFileHandle | undefined>(\n ((_a) => true) as (arg: string | undefined) => arg is ImportFileHandle | undefined,\n );\n\nexport function* range(from: number, to: number, step = 1) {\n for (let i = from; i < to; i += step) {\n yield i;\n }\n}\n\nexport function toList<T>(iterable: Iterable<T>): T[] {\n const lst: T[] = [];\n for (const it of iterable) {\n lst.push(it);\n }\n\n return lst;\n}\n\nexport function times<R>(n: number, cb: (i: number) => R): R[] {\n return toList(range(0, n)).map(cb);\n}\n\nexport const $BlockArgs = z.object({\n numbers: z.array(z.coerce.number()),\n handles: z.array(ImportFileHandleSchema),\n});\n\nexport type BlockArgs = z.infer<typeof $BlockArgs>;\n\nexport type UiState = {\n dataTableV2: {\n sourceId?: string;\n numRows: number;\n state: PlDataTableStateV2;\n };\n dynamicSections: {\n id: string;\n label: string;\n }[];\n datasets: {\n id: string;\n label: string;\n }[];\n};\n\nexport const platforma = BlockModel.create('Heavy')\n\n .withArgs<BlockArgs>({ numbers: [1, 2, 3, 4], handles: [] })\n\n .withUiState<UiState>({\n dataTableV2: {\n sourceId: 'source_1',\n numRows: 200,\n state: createPlDataTableStateV2(),\n },\n dynamicSections: [],\n datasets: [],\n })\n\n .argsValid((ctx) => {\n if (ctx.args.numbers.length === 5) {\n throw new Error('argsValid: test error');\n }\n\n return ctx.args.numbers.length > 0;\n })\n\n .output('numbers', (ctx) => ctx.outputs?.resolve('numbers')?.getDataAsJson<number[]>())\n\n .output('progresses', (ctx) => {\n const m = ctx.outputs?.resolve('progresses');\n const progresses = m?.mapFields((name, val) => [name, val?.getImportProgress()] as const);\n return Object.fromEntries(progresses ?? []);\n })\n\n .output('ptV2Sheets', (ctx) => {\n const rowCount = ctx.uiState.dataTableV2.numRows ?? 0;\n const sheets = [\n {\n axis: {\n type: 'Int',\n name: 'part',\n annotations: {\n 'pl7.app/label': 'Partitioned axis',\n 'pl7.app/discreteValues': '[0,1]',\n },\n },\n options: [\n { value: 0, label: 'Partition 1' },\n { value: 1, label: 'Partition 2' },\n ],\n } satisfies PlDataTableSheet,\n ];\n return rowCount > 0 ? sheets : [];\n })\n\n .output('ptV2', (ctx) => {\n const rowCount = ctx.uiState.dataTableV2.numRows ?? 0;\n const makePartitionId = (rowCount: number, i: number) => Math.floor((2 * i) / (rowCount + 1));\n const columns: PColumn<PColumnValues>[] = [\n {\n id: 'column1' as PObjectId,\n spec: {\n kind: 'PColumn',\n valueType: 'String',\n name: 'example',\n annotations: {\n 'pl7.app/label': 'String column',\n 'pl7.app/discreteValues': '[\"up\",\"down\"]',\n 'pl7.app/table/orderPriority': '101',\n },\n axesSpec: [\n {\n type: 'Int',\n name: 'part',\n annotations: {\n 'pl7.app/label': 'Partitioned axis',\n 'pl7.app/discreteValues': '[0,1]',\n },\n },\n {\n type: 'Int',\n name: 'index',\n annotations: {\n 'pl7.app/label': 'Int axis',\n },\n },\n ],\n },\n data: times(rowCount, (i) => {\n const v = i + 1;\n return {\n key: [makePartitionId(rowCount, v), v],\n val: v.toString(),\n };\n }),\n },\n {\n id: 'column2' as PObjectId,\n spec: {\n kind: 'PColumn',\n valueType: 'Float',\n name: 'value',\n annotations: {\n 'pl7.app/label': 'Float column',\n 'pl7.app/table/visibility': 'optional',\n 'pl7.app/table/orderPriority': '100',\n },\n axesSpec: [\n {\n type: 'Int',\n name: 'part',\n annotations: {\n 'pl7.app/label': 'Partitioned axis',\n 'pl7.app/discreteValues': '[0,1]',\n },\n },\n {\n type: 'Int',\n name: 'index',\n annotations: {\n 'pl7.app/label': 'Int axis',\n },\n },\n ],\n },\n data: times(rowCount, (i) => {\n const v = i + 1;\n return {\n key: [makePartitionId(rowCount, v), v],\n val: v + 0.1,\n };\n }),\n },\n {\n id: 'labelColumn' as PObjectId,\n spec: {\n kind: 'PColumn',\n valueType: 'Int',\n name: 'pl7.app/label',\n annotations: {\n 'pl7.app/label': 'Int axis labels',\n },\n axesSpec: [\n {\n type: 'Int',\n name: 'index',\n annotations: {\n 'pl7.app/label': 'Int axis',\n },\n },\n ],\n },\n data: times(rowCount, (i) => {\n const v = i + 1;\n return {\n key: [v],\n val: 100000 - v,\n };\n }),\n },\n {\n id: 'linkerColumn' as PObjectId,\n spec: {\n kind: 'PColumn',\n valueType: 'Int',\n name: 'linker',\n annotations: {\n 'pl7.app/label': 'Index axis linker',\n 'pl7.app/isLinkerColumn': 'true',\n 'pl7.app/table/visibility': 'hidden',\n },\n axesSpec: [\n {\n type: 'Int',\n name: 'index',\n annotations: {\n 'pl7.app/label': 'Int axis',\n },\n },\n {\n type: 'Int',\n name: 'linkedIndex',\n annotations: {\n 'pl7.app/label': 'Linked int axis',\n },\n },\n ],\n },\n data: times(rowCount, (i) => {\n const v = i + 1;\n return {\n key: [v, v],\n val: 1,\n };\n }),\n },\n ];\n for (let j = 1; j < 10; ++j) {\n columns.push({\n id: `alphabeticalColumn${j}` as PObjectId,\n spec: {\n kind: 'PColumn',\n valueType: 'String',\n name: 'value',\n annotations: {\n 'pl7.app/label': `Alphabetical column ${j}`,\n 'pl7.app/table/visibility': 'optional',\n 'pl7.app/table/orderPriority': (10 - j).toString(),\n },\n axesSpec: [\n {\n type: 'Int',\n name: 'linkedIndex',\n annotations: {\n 'pl7.app/label': 'Linked int axis',\n },\n },\n ],\n },\n data: times(rowCount, (i) => {\n const v = i + 1;\n return {\n key: [v],\n val: v.toString().repeat(j),\n };\n }),\n });\n }\n return createPlDataTableV2(\n ctx,\n columns,\n ctx.uiState.dataTableV2.state,\n );\n })\n\n .title((ctx) => {\n if (ctx.args.numbers.length === 5) {\n throw new Error('block title: test error');\n }\n\n return 'Ui Examples';\n })\n\n .sections((ctx) => {\n const dynamicSections = (ctx.uiState.dynamicSections ?? []).map((it) => ({\n type: 'link' as const,\n href: `/section?id=${it.id}` as const,\n label: it.label,\n }));\n\n if (dynamicSections.some((it) => it.label === 'Error')) {\n throw new Error('sections: test error');\n }\n\n return [\n { type: 'link', href: '/loaders', label: 'Loaders' },\n { type: 'link', href: '/', label: 'Icons/Masks' },\n { type: 'link', href: '/state', label: 'State' },\n { type: 'link', href: '/layout', label: 'Layout' },\n { type: 'link', href: '/form-components', label: 'Form Components' },\n { type: 'link', href: '/log-view', label: 'PlLogView' },\n { type: 'link', href: '/modals', label: 'Modals' },\n { type: 'link', href: '/select-files', label: 'Select Files' },\n { type: 'link', href: '/inject-env', label: 'Inject env' },\n { type: 'link', href: '/use-watch-fetch', label: 'useWatchFetch' },\n { type: 'link', href: '/typography', label: 'Typography' },\n { type: 'link', href: '/ag-grid-vue', label: 'AgGridVue' },\n { type: 'link', href: '/ag-grid-vue-with-builder', label: 'AgGridVue with builder' },\n { type: 'link', href: '/pl-ag-data-table-v2', label: 'PlAgDataTableV2' },\n { type: 'link', href: '/pl-splash-page', label: 'PlSplashPage' },\n { type: 'link', href: '/pl-file-input-page', label: 'PlFileInputPage' },\n { type: 'link', href: '/pl-number-field-page', label: 'PlNumberFieldPage' },\n { type: 'link', href: '/pl-error-boundary-page', label: 'PlErrorBoundaryPage' },\n { type: 'link', href: '/pl-element-list-page', label: 'PlElementList' },\n { type: 'link', href: '/errors', label: 'Errors' },\n { type: 'link', href: '/text-fields', label: 'PlTextField' },\n { type: 'link', href: '/tabs', label: 'PlTabs' },\n { type: 'link', href: '/stacked-bar', label: 'PlChartStackedBar' },\n { type: 'link', href: '/histogram', label: 'PlChartHistogram' },\n { type: 'link', href: '/buttons', label: 'ButtonsPage' },\n { type: 'link', href: '/notifications', label: 'Notifications' },\n { type: 'link', href: '/drafts', label: 'Drafts' },\n { type: 'link', href: '/pl-autocomplete', label: 'PlAutocomplete' },\n { type: 'link', href: '/radio', label: 'PlRadio' },\n ...(dynamicSections.length\n ? [\n { type: 'delimiter' },\n ...dynamicSections,\n { type: 'delimiter' }] as const\n : []),\n {\n type: 'link',\n href: '/add-section',\n appearance: 'add-section',\n label: 'New Dynamic section',\n },\n ];\n })\n\n .done(2); // api version 2\n\nexport type BlockOutputs = InferOutputsType<typeof platforma>;\nexport type Href = InferHrefType<typeof platforma>;\n"]}
1
+ {"version":3,"sources":["../src/index.ts"],"names":["z","BlockModel","createPlDataTableStateV2","ValueType","Annotation","stringifyJson","rowCount","PColumnName","createPlDataTableV2"],"mappings":"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","file":"index.cjs","sourcesContent":["import type {\n ImportFileHandle,\n InferHrefType,\n InferOutputsType,\n PColumn,\n PColumnValues,\n PObjectId,\n PlDataTableStateV2,\n PlDataTableSheet,\n} from '@platforma-sdk/model';\nimport {\n Annotation,\n BlockModel,\n createPlDataTableStateV2,\n createPlDataTableV2,\n PColumnName,\n stringifyJson,\n ValueType,\n} from '@platforma-sdk/model';\nimport { z } from 'zod';\n\nexport const ImportFileHandleSchema = z\n .string()\n .optional()\n .refine<ImportFileHandle | undefined>(\n ((_a) => true) as (arg: string | undefined) => arg is ImportFileHandle | undefined,\n );\n\nexport function* range(from: number, to: number, step = 1) {\n for (let i = from; i < to; i += step) {\n yield i;\n }\n}\n\nexport function toList<T>(iterable: Iterable<T>): T[] {\n const lst: T[] = [];\n for (const it of iterable) {\n lst.push(it);\n }\n\n return lst;\n}\n\nexport function times<R>(n: number, cb: (i: number) => R): R[] {\n return toList(range(0, n)).map(cb);\n}\n\nexport const $BlockArgs = z.object({\n numbers: z.array(z.coerce.number()),\n handles: z.array(ImportFileHandleSchema),\n});\n\nexport type BlockArgs = z.infer<typeof $BlockArgs>;\n\nexport type UiState = {\n dataTableV2: {\n sourceId?: string;\n numRows: number;\n state: PlDataTableStateV2;\n };\n dynamicSections: {\n id: string;\n label: string;\n }[];\n datasets: {\n id: string;\n label: string;\n }[];\n};\n\nexport const platforma = BlockModel.create('Heavy')\n\n .withArgs<BlockArgs>({ numbers: [1, 2, 3, 4], handles: [] })\n\n .withUiState<UiState>({\n dataTableV2: {\n sourceId: 'source_1',\n numRows: 200,\n state: createPlDataTableStateV2(),\n },\n dynamicSections: [],\n datasets: [],\n })\n\n .argsValid((ctx) => {\n if (ctx.args.numbers.length === 5) {\n throw new Error('argsValid: test error');\n }\n\n return ctx.args.numbers.length > 0;\n })\n\n .output('numbers', (ctx) => ctx.outputs?.resolve('numbers')?.getDataAsJson<number[]>())\n\n .output('progresses', (ctx) => {\n const m = ctx.outputs?.resolve('progresses');\n const progresses = m?.mapFields((name, val) => [name, val?.getImportProgress()] as const);\n return Object.fromEntries(progresses ?? []);\n })\n\n .output('ptV2Sheets', (ctx) => {\n const rowCount = ctx.uiState.dataTableV2.numRows ?? 0;\n const sheets = [\n {\n axis: {\n type: ValueType.Int,\n name: 'part',\n annotations: {\n [Annotation.Label]: 'Partitioned axis',\n [Annotation.DiscreteValues]: stringifyJson([0, 1]),\n } satisfies Annotation,\n },\n options: [\n { value: 0, label: 'Partition 1' },\n { value: 1, label: 'Partition 2' },\n ],\n } satisfies PlDataTableSheet,\n ];\n return rowCount > 0 ? sheets : [];\n })\n\n .output('ptV2', (ctx) => {\n const rowCount = ctx.uiState.dataTableV2.numRows ?? 0;\n const makePartitionId = (rowCount: number, i: number) => Math.floor((2 * i) / (rowCount + 1));\n const columns: PColumn<PColumnValues>[] = [\n {\n id: 'column1' as PObjectId,\n spec: {\n kind: 'PColumn',\n valueType: ValueType.String,\n name: 'example',\n annotations: {\n [Annotation.Label]: 'String column',\n [Annotation.DiscreteValues]: stringifyJson(['up', 'down']),\n [Annotation.Table.OrderPriority]: stringifyJson(101),\n } satisfies Annotation,\n axesSpec: [\n {\n type: ValueType.Int,\n name: 'part',\n annotations: {\n [Annotation.Label]: 'Partitioned axis',\n [Annotation.DiscreteValues]: stringifyJson([0, 1]),\n } satisfies Annotation,\n },\n {\n type: ValueType.Int,\n name: 'index',\n annotations: {\n [Annotation.Label]: 'Int axis',\n } satisfies Annotation,\n },\n ],\n },\n data: times(rowCount, (i) => {\n const v = i + 1;\n return {\n key: [makePartitionId(rowCount, v), v],\n val: v.toString(),\n };\n }),\n },\n {\n id: 'column2' as PObjectId,\n spec: {\n kind: 'PColumn',\n valueType: ValueType.Float,\n name: 'value',\n annotations: {\n [Annotation.Label]: 'Float column',\n [Annotation.Table.Visibility]: 'optional',\n [Annotation.Table.OrderPriority]: stringifyJson(100),\n } satisfies Annotation,\n axesSpec: [\n {\n type: ValueType.Int,\n name: 'part',\n annotations: {\n [Annotation.Label]: 'Partitioned axis',\n [Annotation.DiscreteValues]: stringifyJson([0, 1]),\n } satisfies Annotation,\n },\n {\n type: ValueType.Int,\n name: 'index',\n annotations: {\n [Annotation.Label]: 'Int axis',\n } satisfies Annotation,\n },\n ],\n },\n data: times(rowCount, (i) => {\n const v = i + 1;\n return {\n key: [makePartitionId(rowCount, v), v],\n val: v + 0.1,\n };\n }),\n },\n {\n id: 'labelColumn' as PObjectId,\n spec: {\n kind: 'PColumn',\n valueType: ValueType.Int,\n name: PColumnName.Label,\n annotations: {\n [Annotation.Label]: 'Int axis labels',\n } satisfies Annotation,\n axesSpec: [\n {\n type: ValueType.Int,\n name: 'index',\n annotations: {\n [Annotation.Label]: 'Int axis',\n } satisfies Annotation,\n },\n ],\n },\n data: times(rowCount, (i) => {\n const v = i + 1;\n return {\n key: [v],\n val: 100000 - v,\n };\n }),\n },\n {\n id: 'linkerColumn' as PObjectId,\n spec: {\n kind: 'PColumn',\n valueType: ValueType.Int,\n name: 'linker',\n annotations: {\n [Annotation.Label]: 'Index axis linker',\n [Annotation.IsLinkerColumn]: stringifyJson(true),\n [Annotation.Table.Visibility]: 'hidden',\n } satisfies Annotation,\n axesSpec: [\n {\n type: ValueType.Int,\n name: 'index',\n annotations: {\n [Annotation.Label]: 'Int axis',\n } satisfies Annotation,\n },\n {\n type: ValueType.Int,\n name: 'linkedIndex',\n annotations: {\n [Annotation.Label]: 'Linked int axis',\n } satisfies Annotation,\n },\n ],\n },\n data: times(rowCount, (i) => {\n const v = i + 1;\n return {\n key: [v, v],\n val: 1,\n };\n }),\n },\n ];\n for (let j = 1; j < 10; ++j) {\n columns.push({\n id: `alphabeticalColumn${j}` as PObjectId,\n spec: {\n kind: 'PColumn',\n valueType: ValueType.String,\n name: 'value',\n annotations: {\n [Annotation.Label]: `Alphabetical column ${j}`,\n [Annotation.Table.Visibility]: 'optional',\n [Annotation.Table.OrderPriority]: stringifyJson(10 - j),\n } satisfies Annotation,\n axesSpec: [\n {\n type: ValueType.Int,\n name: 'linkedIndex',\n annotations: {\n [Annotation.Label]: 'Linked int axis',\n } satisfies Annotation,\n },\n ],\n },\n data: times(rowCount, (i) => {\n const v = i + 1;\n return {\n key: [v],\n val: v.toString().repeat(j),\n };\n }),\n });\n }\n return createPlDataTableV2(\n ctx,\n columns,\n ctx.uiState.dataTableV2.state,\n );\n })\n\n .title((ctx) => {\n if (ctx.args.numbers.length === 5) {\n throw new Error('block title: test error');\n }\n\n return 'Ui Examples';\n })\n\n .sections((ctx) => {\n const dynamicSections = (ctx.uiState.dynamicSections ?? []).map((it) => ({\n type: 'link' as const,\n href: `/section?id=${it.id}` as const,\n label: it.label,\n }));\n\n if (dynamicSections.some((it) => it.label === 'Error')) {\n throw new Error('sections: test error');\n }\n\n return [\n { type: 'link', href: '/loaders', label: 'Loaders' },\n { type: 'link', href: '/', label: 'Icons/Masks' },\n { type: 'link', href: '/state', label: 'State' },\n { type: 'link', href: '/layout', label: 'Layout' },\n { type: 'link', href: '/form-components', label: 'Form Components' },\n { type: 'link', href: '/log-view', label: 'PlLogView' },\n { type: 'link', href: '/modals', label: 'Modals' },\n { type: 'link', href: '/select-files', label: 'Select Files' },\n { type: 'link', href: '/inject-env', label: 'Inject env' },\n { type: 'link', href: '/use-watch-fetch', label: 'useWatchFetch' },\n { type: 'link', href: '/typography', label: 'Typography' },\n { type: 'link', href: '/ag-grid-vue', label: 'AgGridVue' },\n { type: 'link', href: '/ag-grid-vue-with-builder', label: 'AgGridVue with builder' },\n { type: 'link', href: '/pl-ag-data-table-v2', label: 'PlAgDataTableV2' },\n { type: 'link', href: '/pl-splash-page', label: 'PlSplashPage' },\n { type: 'link', href: '/pl-file-input-page', label: 'PlFileInputPage' },\n { type: 'link', href: '/pl-number-field-page', label: 'PlNumberFieldPage' },\n { type: 'link', href: '/pl-error-boundary-page', label: 'PlErrorBoundaryPage' },\n { type: 'link', href: '/pl-element-list-page', label: 'PlElementList' },\n { type: 'link', href: '/errors', label: 'Errors' },\n { type: 'link', href: '/text-fields', label: 'PlTextField' },\n { type: 'link', href: '/tabs', label: 'PlTabs' },\n { type: 'link', href: '/stacked-bar', label: 'PlChartStackedBar' },\n { type: 'link', href: '/histogram', label: 'PlChartHistogram' },\n { type: 'link', href: '/buttons', label: 'ButtonsPage' },\n { type: 'link', href: '/notifications', label: 'Notifications' },\n { type: 'link', href: '/drafts', label: 'Drafts' },\n { type: 'link', href: '/pl-autocomplete', label: 'PlAutocomplete' },\n { type: 'link', href: '/radio', label: 'PlRadio' },\n ...(dynamicSections.length\n ? [\n { type: 'delimiter' },\n ...dynamicSections,\n { type: 'delimiter' }] as const\n : []),\n {\n type: 'link',\n href: '/add-section',\n appearance: 'add-section',\n label: 'New Dynamic section',\n },\n ];\n })\n\n .done(2); // api version 2\n\nexport type BlockOutputs = InferOutputsType<typeof platforma>;\nexport type Href = InferHrefType<typeof platforma>;\n"]}
package/dist/index.d.cts CHANGED
@@ -45,8 +45,10 @@ declare const platforma: _platforma_sdk_model.PlatformaV2<{
45
45
  type: "Int";
46
46
  name: string;
47
47
  annotations: {
48
- 'pl7.app/label': string;
49
- 'pl7.app/discreteValues': string;
48
+ "pl7.app/label": string;
49
+ "pl7.app/discreteValues": string & {
50
+ __json_stringified: number[];
51
+ };
50
52
  };
51
53
  };
52
54
  options: {
package/dist/index.d.ts CHANGED
@@ -45,8 +45,10 @@ declare const platforma: _platforma_sdk_model.PlatformaV2<{
45
45
  type: "Int";
46
46
  name: string;
47
47
  annotations: {
48
- 'pl7.app/label': string;
49
- 'pl7.app/discreteValues': string;
48
+ "pl7.app/label": string;
49
+ "pl7.app/discreteValues": string & {
50
+ __json_stringified: number[];
51
+ };
50
52
  };
51
53
  };
52
54
  options: {
package/dist/index.js CHANGED
@@ -1,4 +1,4 @@
1
- import { BlockModel, createPlDataTableStateV2, createPlDataTableV2 } from '@platforma-sdk/model';
1
+ import { BlockModel, createPlDataTableStateV2, stringifyJson, ValueType, Annotation, PColumnName, createPlDataTableV2 } from '@platforma-sdk/model';
2
2
  import { z } from 'zod';
3
3
 
4
4
  // src/index.ts
@@ -46,11 +46,11 @@ var platforma = BlockModel.create("Heavy").withArgs({ numbers: [1, 2, 3, 4], han
46
46
  const sheets = [
47
47
  {
48
48
  axis: {
49
- type: "Int",
49
+ type: ValueType.Int,
50
50
  name: "part",
51
51
  annotations: {
52
- "pl7.app/label": "Partitioned axis",
53
- "pl7.app/discreteValues": "[0,1]"
52
+ [Annotation.Label]: "Partitioned axis",
53
+ [Annotation.DiscreteValues]: stringifyJson([0, 1])
54
54
  }
55
55
  },
56
56
  options: [
@@ -68,27 +68,27 @@ var platforma = BlockModel.create("Heavy").withArgs({ numbers: [1, 2, 3, 4], han
68
68
  id: "column1",
69
69
  spec: {
70
70
  kind: "PColumn",
71
- valueType: "String",
71
+ valueType: ValueType.String,
72
72
  name: "example",
73
73
  annotations: {
74
- "pl7.app/label": "String column",
75
- "pl7.app/discreteValues": '["up","down"]',
76
- "pl7.app/table/orderPriority": "101"
74
+ [Annotation.Label]: "String column",
75
+ [Annotation.DiscreteValues]: stringifyJson(["up", "down"]),
76
+ [Annotation.Table.OrderPriority]: stringifyJson(101)
77
77
  },
78
78
  axesSpec: [
79
79
  {
80
- type: "Int",
80
+ type: ValueType.Int,
81
81
  name: "part",
82
82
  annotations: {
83
- "pl7.app/label": "Partitioned axis",
84
- "pl7.app/discreteValues": "[0,1]"
83
+ [Annotation.Label]: "Partitioned axis",
84
+ [Annotation.DiscreteValues]: stringifyJson([0, 1])
85
85
  }
86
86
  },
87
87
  {
88
- type: "Int",
88
+ type: ValueType.Int,
89
89
  name: "index",
90
90
  annotations: {
91
- "pl7.app/label": "Int axis"
91
+ [Annotation.Label]: "Int axis"
92
92
  }
93
93
  }
94
94
  ]
@@ -105,27 +105,27 @@ var platforma = BlockModel.create("Heavy").withArgs({ numbers: [1, 2, 3, 4], han
105
105
  id: "column2",
106
106
  spec: {
107
107
  kind: "PColumn",
108
- valueType: "Float",
108
+ valueType: ValueType.Float,
109
109
  name: "value",
110
110
  annotations: {
111
- "pl7.app/label": "Float column",
112
- "pl7.app/table/visibility": "optional",
113
- "pl7.app/table/orderPriority": "100"
111
+ [Annotation.Label]: "Float column",
112
+ [Annotation.Table.Visibility]: "optional",
113
+ [Annotation.Table.OrderPriority]: stringifyJson(100)
114
114
  },
115
115
  axesSpec: [
116
116
  {
117
- type: "Int",
117
+ type: ValueType.Int,
118
118
  name: "part",
119
119
  annotations: {
120
- "pl7.app/label": "Partitioned axis",
121
- "pl7.app/discreteValues": "[0,1]"
120
+ [Annotation.Label]: "Partitioned axis",
121
+ [Annotation.DiscreteValues]: stringifyJson([0, 1])
122
122
  }
123
123
  },
124
124
  {
125
- type: "Int",
125
+ type: ValueType.Int,
126
126
  name: "index",
127
127
  annotations: {
128
- "pl7.app/label": "Int axis"
128
+ [Annotation.Label]: "Int axis"
129
129
  }
130
130
  }
131
131
  ]
@@ -142,17 +142,17 @@ var platforma = BlockModel.create("Heavy").withArgs({ numbers: [1, 2, 3, 4], han
142
142
  id: "labelColumn",
143
143
  spec: {
144
144
  kind: "PColumn",
145
- valueType: "Int",
146
- name: "pl7.app/label",
145
+ valueType: ValueType.Int,
146
+ name: PColumnName.Label,
147
147
  annotations: {
148
- "pl7.app/label": "Int axis labels"
148
+ [Annotation.Label]: "Int axis labels"
149
149
  },
150
150
  axesSpec: [
151
151
  {
152
- type: "Int",
152
+ type: ValueType.Int,
153
153
  name: "index",
154
154
  annotations: {
155
- "pl7.app/label": "Int axis"
155
+ [Annotation.Label]: "Int axis"
156
156
  }
157
157
  }
158
158
  ]
@@ -169,26 +169,26 @@ var platforma = BlockModel.create("Heavy").withArgs({ numbers: [1, 2, 3, 4], han
169
169
  id: "linkerColumn",
170
170
  spec: {
171
171
  kind: "PColumn",
172
- valueType: "Int",
172
+ valueType: ValueType.Int,
173
173
  name: "linker",
174
174
  annotations: {
175
- "pl7.app/label": "Index axis linker",
176
- "pl7.app/isLinkerColumn": "true",
177
- "pl7.app/table/visibility": "hidden"
175
+ [Annotation.Label]: "Index axis linker",
176
+ [Annotation.IsLinkerColumn]: stringifyJson(true),
177
+ [Annotation.Table.Visibility]: "hidden"
178
178
  },
179
179
  axesSpec: [
180
180
  {
181
- type: "Int",
181
+ type: ValueType.Int,
182
182
  name: "index",
183
183
  annotations: {
184
- "pl7.app/label": "Int axis"
184
+ [Annotation.Label]: "Int axis"
185
185
  }
186
186
  },
187
187
  {
188
- type: "Int",
188
+ type: ValueType.Int,
189
189
  name: "linkedIndex",
190
190
  annotations: {
191
- "pl7.app/label": "Linked int axis"
191
+ [Annotation.Label]: "Linked int axis"
192
192
  }
193
193
  }
194
194
  ]
@@ -207,19 +207,19 @@ var platforma = BlockModel.create("Heavy").withArgs({ numbers: [1, 2, 3, 4], han
207
207
  id: `alphabeticalColumn${j}`,
208
208
  spec: {
209
209
  kind: "PColumn",
210
- valueType: "String",
210
+ valueType: ValueType.String,
211
211
  name: "value",
212
212
  annotations: {
213
- "pl7.app/label": `Alphabetical column ${j}`,
214
- "pl7.app/table/visibility": "optional",
215
- "pl7.app/table/orderPriority": (10 - j).toString()
213
+ [Annotation.Label]: `Alphabetical column ${j}`,
214
+ [Annotation.Table.Visibility]: "optional",
215
+ [Annotation.Table.OrderPriority]: stringifyJson(10 - j)
216
216
  },
217
217
  axesSpec: [
218
218
  {
219
- type: "Int",
219
+ type: ValueType.Int,
220
220
  name: "linkedIndex",
221
221
  annotations: {
222
- "pl7.app/label": "Linked int axis"
222
+ [Annotation.Label]: "Linked int axis"
223
223
  }
224
224
  }
225
225
  ]
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts"],"names":["rowCount"],"mappings":";;;;AAiBO,IAAM,sBAAyB,GAAA,CAAA,CACnC,MAAO,EAAA,CACP,UACA,CAAA,MAAA;AAAA,EACE,CAAC,EAAO,KAAA;AACX;AAEK,UAAU,KAAM,CAAA,IAAA,EAAc,EAAY,EAAA,IAAA,GAAO,CAAG,EAAA;AACzD,EAAA,KAAA,IAAS,CAAI,GAAA,IAAA,EAAM,CAAI,GAAA,EAAA,EAAI,KAAK,IAAM,EAAA;AACpC,IAAM,MAAA,CAAA;AAAA;AAEV;AAEO,SAAS,OAAU,QAA4B,EAAA;AACpD,EAAA,MAAM,MAAW,EAAC;AAClB,EAAA,KAAA,MAAW,MAAM,QAAU,EAAA;AACzB,IAAA,GAAA,CAAI,KAAK,EAAE,CAAA;AAAA;AAGb,EAAO,OAAA,GAAA;AACT;AAEO,SAAS,KAAA,CAAS,GAAW,EAA2B,EAAA;AAC7D,EAAA,OAAO,OAAO,KAAM,CAAA,CAAA,EAAG,CAAC,CAAC,CAAA,CAAE,IAAI,EAAE,CAAA;AACnC;AAEa,IAAA,UAAA,GAAa,EAAE,MAAO,CAAA;AAAA,EACjC,SAAS,CAAE,CAAA,KAAA,CAAM,CAAE,CAAA,MAAA,CAAO,QAAQ,CAAA;AAAA,EAClC,OAAA,EAAS,CAAE,CAAA,KAAA,CAAM,sBAAsB;AACzC,CAAC;AAoBM,IAAM,YAAY,UAAW,CAAA,MAAA,CAAO,OAAO,CAE/C,CAAA,QAAA,CAAoB,EAAE,OAAS,EAAA,CAAC,GAAG,CAAG,EAAA,CAAA,EAAG,CAAC,CAAG,EAAA,OAAA,EAAS,EAAG,EAAC,EAE1D,WAAqB,CAAA;AAAA,EACpB,WAAa,EAAA;AAAA,IACX,QAAU,EAAA,UAAA;AAAA,IACV,OAAS,EAAA,GAAA;AAAA,IACT,OAAO,wBAAyB;AAAA,GAClC;AAAA,EACA,iBAAiB,EAAC;AAAA,EAClB,UAAU;AACZ,CAAC,CAAA,CAEA,SAAU,CAAA,CAAC,GAAQ,KAAA;AAClB,EAAA,IAAI,GAAI,CAAA,IAAA,CAAK,OAAQ,CAAA,MAAA,KAAW,CAAG,EAAA;AACjC,IAAM,MAAA,IAAI,MAAM,uBAAuB,CAAA;AAAA;AAGzC,EAAO,OAAA,GAAA,CAAI,IAAK,CAAA,OAAA,CAAQ,MAAS,GAAA,CAAA;AACnC,CAAC,EAEA,MAAO,CAAA,SAAA,EAAW,CAAC,GAAA,KAAQ,IAAI,OAAS,EAAA,OAAA,CAAQ,SAAS,CAAA,EAAG,eAAyB,CAAA,CAErF,MAAO,CAAA,YAAA,EAAc,CAAC,GAAQ,KAAA;AAC7B,EAAA,MAAM,CAAI,GAAA,GAAA,CAAI,OAAS,EAAA,OAAA,CAAQ,YAAY,CAAA;AAC3C,EAAM,MAAA,UAAA,GAAa,CAAG,EAAA,SAAA,CAAU,CAAC,IAAA,EAAM,GAAQ,KAAA,CAAC,IAAM,EAAA,GAAA,EAAK,iBAAkB,EAAC,CAAU,CAAA;AACxF,EAAA,OAAO,MAAO,CAAA,WAAA,CAAY,UAAc,IAAA,EAAE,CAAA;AAC5C,CAAC,CAEA,CAAA,MAAA,CAAO,YAAc,EAAA,CAAC,GAAQ,KAAA;AAC7B,EAAA,MAAM,QAAW,GAAA,GAAA,CAAI,OAAQ,CAAA,WAAA,CAAY,OAAW,IAAA,CAAA;AACpD,EAAA,MAAM,MAAS,GAAA;AAAA,IACb;AAAA,MACE,IAAM,EAAA;AAAA,QACJ,IAAM,EAAA,KAAA;AAAA,QACN,IAAM,EAAA,MAAA;AAAA,QACN,WAAa,EAAA;AAAA,UACX,eAAiB,EAAA,kBAAA;AAAA,UACjB,wBAA0B,EAAA;AAAA;AAC5B,OACF;AAAA,MACA,OAAS,EAAA;AAAA,QACP,EAAE,KAAA,EAAO,CAAG,EAAA,KAAA,EAAO,aAAc,EAAA;AAAA,QACjC,EAAE,KAAA,EAAO,CAAG,EAAA,KAAA,EAAO,aAAc;AAAA;AACnC;AACF,GACF;AACA,EAAO,OAAA,QAAA,GAAW,CAAI,GAAA,MAAA,GAAS,EAAC;AAClC,CAAC,CAEA,CAAA,MAAA,CAAO,MAAQ,EAAA,CAAC,GAAQ,KAAA;AACvB,EAAA,MAAM,QAAW,GAAA,GAAA,CAAI,OAAQ,CAAA,WAAA,CAAY,OAAW,IAAA,CAAA;AACpD,EAAM,MAAA,eAAA,GAAkB,CAACA,SAAkB,EAAA,CAAA,KAAc,KAAK,KAAO,CAAA,CAAA,GAAI,CAAMA,IAAAA,SAAAA,GAAW,CAAE,CAAA,CAAA;AAC5F,EAAA,MAAM,OAAoC,GAAA;AAAA,IACxC;AAAA,MACE,EAAI,EAAA,SAAA;AAAA,MACJ,IAAM,EAAA;AAAA,QACJ,IAAM,EAAA,SAAA;AAAA,QACN,SAAW,EAAA,QAAA;AAAA,QACX,IAAM,EAAA,SAAA;AAAA,QACN,WAAa,EAAA;AAAA,UACX,eAAiB,EAAA,eAAA;AAAA,UACjB,wBAA0B,EAAA,eAAA;AAAA,UAC1B,6BAA+B,EAAA;AAAA,SACjC;AAAA,QACA,QAAU,EAAA;AAAA,UACR;AAAA,YACE,IAAM,EAAA,KAAA;AAAA,YACN,IAAM,EAAA,MAAA;AAAA,YACN,WAAa,EAAA;AAAA,cACX,eAAiB,EAAA,kBAAA;AAAA,cACjB,wBAA0B,EAAA;AAAA;AAC5B,WACF;AAAA,UACA;AAAA,YACE,IAAM,EAAA,KAAA;AAAA,YACN,IAAM,EAAA,OAAA;AAAA,YACN,WAAa,EAAA;AAAA,cACX,eAAiB,EAAA;AAAA;AACnB;AACF;AACF,OACF;AAAA,MACA,IAAM,EAAA,KAAA,CAAM,QAAU,EAAA,CAAC,CAAM,KAAA;AAC3B,QAAA,MAAM,IAAI,CAAI,GAAA,CAAA;AACd,QAAO,OAAA;AAAA,UACL,KAAK,CAAC,eAAA,CAAgB,QAAU,EAAA,CAAC,GAAG,CAAC,CAAA;AAAA,UACrC,GAAA,EAAK,EAAE,QAAS;AAAA,SAClB;AAAA,OACD;AAAA,KACH;AAAA,IACA;AAAA,MACE,EAAI,EAAA,SAAA;AAAA,MACJ,IAAM,EAAA;AAAA,QACJ,IAAM,EAAA,SAAA;AAAA,QACN,SAAW,EAAA,OAAA;AAAA,QACX,IAAM,EAAA,OAAA;AAAA,QACN,WAAa,EAAA;AAAA,UACX,eAAiB,EAAA,cAAA;AAAA,UACjB,0BAA4B,EAAA,UAAA;AAAA,UAC5B,6BAA+B,EAAA;AAAA,SACjC;AAAA,QACA,QAAU,EAAA;AAAA,UACR;AAAA,YACE,IAAM,EAAA,KAAA;AAAA,YACN,IAAM,EAAA,MAAA;AAAA,YACN,WAAa,EAAA;AAAA,cACX,eAAiB,EAAA,kBAAA;AAAA,cACjB,wBAA0B,EAAA;AAAA;AAC5B,WACF;AAAA,UACA;AAAA,YACE,IAAM,EAAA,KAAA;AAAA,YACN,IAAM,EAAA,OAAA;AAAA,YACN,WAAa,EAAA;AAAA,cACX,eAAiB,EAAA;AAAA;AACnB;AACF;AACF,OACF;AAAA,MACA,IAAM,EAAA,KAAA,CAAM,QAAU,EAAA,CAAC,CAAM,KAAA;AAC3B,QAAA,MAAM,IAAI,CAAI,GAAA,CAAA;AACd,QAAO,OAAA;AAAA,UACL,KAAK,CAAC,eAAA,CAAgB,QAAU,EAAA,CAAC,GAAG,CAAC,CAAA;AAAA,UACrC,KAAK,CAAI,GAAA;AAAA,SACX;AAAA,OACD;AAAA,KACH;AAAA,IACA;AAAA,MACE,EAAI,EAAA,aAAA;AAAA,MACJ,IAAM,EAAA;AAAA,QACJ,IAAM,EAAA,SAAA;AAAA,QACN,SAAW,EAAA,KAAA;AAAA,QACX,IAAM,EAAA,eAAA;AAAA,QACN,WAAa,EAAA;AAAA,UACX,eAAiB,EAAA;AAAA,SACnB;AAAA,QACA,QAAU,EAAA;AAAA,UACR;AAAA,YACE,IAAM,EAAA,KAAA;AAAA,YACN,IAAM,EAAA,OAAA;AAAA,YACN,WAAa,EAAA;AAAA,cACX,eAAiB,EAAA;AAAA;AACnB;AACF;AACF,OACF;AAAA,MACA,IAAM,EAAA,KAAA,CAAM,QAAU,EAAA,CAAC,CAAM,KAAA;AAC3B,QAAA,MAAM,IAAI,CAAI,GAAA,CAAA;AACd,QAAO,OAAA;AAAA,UACL,GAAA,EAAK,CAAC,CAAC,CAAA;AAAA,UACP,KAAK,GAAS,GAAA;AAAA,SAChB;AAAA,OACD;AAAA,KACH;AAAA,IACA;AAAA,MACE,EAAI,EAAA,cAAA;AAAA,MACJ,IAAM,EAAA;AAAA,QACJ,IAAM,EAAA,SAAA;AAAA,QACN,SAAW,EAAA,KAAA;AAAA,QACX,IAAM,EAAA,QAAA;AAAA,QACN,WAAa,EAAA;AAAA,UACX,eAAiB,EAAA,mBAAA;AAAA,UACjB,wBAA0B,EAAA,MAAA;AAAA,UAC1B,0BAA4B,EAAA;AAAA,SAC9B;AAAA,QACA,QAAU,EAAA;AAAA,UACR;AAAA,YACE,IAAM,EAAA,KAAA;AAAA,YACN,IAAM,EAAA,OAAA;AAAA,YACN,WAAa,EAAA;AAAA,cACX,eAAiB,EAAA;AAAA;AACnB,WACF;AAAA,UACA;AAAA,YACE,IAAM,EAAA,KAAA;AAAA,YACN,IAAM,EAAA,aAAA;AAAA,YACN,WAAa,EAAA;AAAA,cACX,eAAiB,EAAA;AAAA;AACnB;AACF;AACF,OACF;AAAA,MACA,IAAM,EAAA,KAAA,CAAM,QAAU,EAAA,CAAC,CAAM,KAAA;AAC3B,QAAA,MAAM,IAAI,CAAI,GAAA,CAAA;AACd,QAAO,OAAA;AAAA,UACL,GAAA,EAAK,CAAC,CAAA,EAAG,CAAC,CAAA;AAAA,UACV,GAAK,EAAA;AAAA,SACP;AAAA,OACD;AAAA;AACH,GACF;AACA,EAAA,KAAA,IAAS,CAAI,GAAA,CAAA,EAAG,CAAI,GAAA,EAAA,EAAI,EAAE,CAAG,EAAA;AAC3B,IAAA,OAAA,CAAQ,IAAK,CAAA;AAAA,MACX,EAAA,EAAI,qBAAqB,CAAC,CAAA,CAAA;AAAA,MAC1B,IAAM,EAAA;AAAA,QACJ,IAAM,EAAA,SAAA;AAAA,QACN,SAAW,EAAA,QAAA;AAAA,QACX,IAAM,EAAA,OAAA;AAAA,QACN,WAAa,EAAA;AAAA,UACX,eAAA,EAAiB,uBAAuB,CAAC,CAAA,CAAA;AAAA,UACzC,0BAA4B,EAAA,UAAA;AAAA,UAC5B,6BAAA,EAAA,CAAgC,EAAK,GAAA,CAAA,EAAG,QAAS;AAAA,SACnD;AAAA,QACA,QAAU,EAAA;AAAA,UACR;AAAA,YACE,IAAM,EAAA,KAAA;AAAA,YACN,IAAM,EAAA,aAAA;AAAA,YACN,WAAa,EAAA;AAAA,cACX,eAAiB,EAAA;AAAA;AACnB;AACF;AACF,OACF;AAAA,MACA,IAAM,EAAA,KAAA,CAAM,QAAU,EAAA,CAAC,CAAM,KAAA;AAC3B,QAAA,MAAM,IAAI,CAAI,GAAA,CAAA;AACd,QAAO,OAAA;AAAA,UACL,GAAA,EAAK,CAAC,CAAC,CAAA;AAAA,UACP,GAAK,EAAA,CAAA,CAAE,QAAS,EAAA,CAAE,OAAO,CAAC;AAAA,SAC5B;AAAA,OACD;AAAA,KACF,CAAA;AAAA;AAEH,EAAO,OAAA,mBAAA;AAAA,IACL,GAAA;AAAA,IACA,OAAA;AAAA,IACA,GAAA,CAAI,QAAQ,WAAY,CAAA;AAAA,GAC1B;AACF,CAAC,CAAA,CAEA,KAAM,CAAA,CAAC,GAAQ,KAAA;AACd,EAAA,IAAI,GAAI,CAAA,IAAA,CAAK,OAAQ,CAAA,MAAA,KAAW,CAAG,EAAA;AACjC,IAAM,MAAA,IAAI,MAAM,yBAAyB,CAAA;AAAA;AAG3C,EAAO,OAAA,aAAA;AACT,CAAC,CAAA,CAEA,QAAS,CAAA,CAAC,GAAQ,KAAA;AACjB,EAAM,MAAA,eAAA,GAAA,CAAmB,IAAI,OAAQ,CAAA,eAAA,IAAmB,EAAI,EAAA,GAAA,CAAI,CAAC,EAAQ,MAAA;AAAA,IACvE,IAAM,EAAA,MAAA;AAAA,IACN,IAAA,EAAM,CAAe,YAAA,EAAA,EAAA,CAAG,EAAE,CAAA,CAAA;AAAA,IAC1B,OAAO,EAAG,CAAA;AAAA,GACV,CAAA,CAAA;AAEF,EAAA,IAAI,gBAAgB,IAAK,CAAA,CAAC,OAAO,EAAG,CAAA,KAAA,KAAU,OAAO,CAAG,EAAA;AACtD,IAAM,MAAA,IAAI,MAAM,sBAAsB,CAAA;AAAA;AAGxC,EAAO,OAAA;AAAA,IACL,EAAE,IAAM,EAAA,MAAA,EAAQ,IAAM,EAAA,UAAA,EAAY,OAAO,SAAU,EAAA;AAAA,IACnD,EAAE,IAAM,EAAA,MAAA,EAAQ,IAAM,EAAA,GAAA,EAAK,OAAO,aAAc,EAAA;AAAA,IAChD,EAAE,IAAM,EAAA,MAAA,EAAQ,IAAM,EAAA,QAAA,EAAU,OAAO,OAAQ,EAAA;AAAA,IAC/C,EAAE,IAAM,EAAA,MAAA,EAAQ,IAAM,EAAA,SAAA,EAAW,OAAO,QAAS,EAAA;AAAA,IACjD,EAAE,IAAM,EAAA,MAAA,EAAQ,IAAM,EAAA,kBAAA,EAAoB,OAAO,iBAAkB,EAAA;AAAA,IACnE,EAAE,IAAM,EAAA,MAAA,EAAQ,IAAM,EAAA,WAAA,EAAa,OAAO,WAAY,EAAA;AAAA,IACtD,EAAE,IAAM,EAAA,MAAA,EAAQ,IAAM,EAAA,SAAA,EAAW,OAAO,QAAS,EAAA;AAAA,IACjD,EAAE,IAAM,EAAA,MAAA,EAAQ,IAAM,EAAA,eAAA,EAAiB,OAAO,cAAe,EAAA;AAAA,IAC7D,EAAE,IAAM,EAAA,MAAA,EAAQ,IAAM,EAAA,aAAA,EAAe,OAAO,YAAa,EAAA;AAAA,IACzD,EAAE,IAAM,EAAA,MAAA,EAAQ,IAAM,EAAA,kBAAA,EAAoB,OAAO,eAAgB,EAAA;AAAA,IACjE,EAAE,IAAM,EAAA,MAAA,EAAQ,IAAM,EAAA,aAAA,EAAe,OAAO,YAAa,EAAA;AAAA,IACzD,EAAE,IAAM,EAAA,MAAA,EAAQ,IAAM,EAAA,cAAA,EAAgB,OAAO,WAAY,EAAA;AAAA,IACzD,EAAE,IAAM,EAAA,MAAA,EAAQ,IAAM,EAAA,2BAAA,EAA6B,OAAO,wBAAyB,EAAA;AAAA,IACnF,EAAE,IAAM,EAAA,MAAA,EAAQ,IAAM,EAAA,sBAAA,EAAwB,OAAO,iBAAkB,EAAA;AAAA,IACvE,EAAE,IAAM,EAAA,MAAA,EAAQ,IAAM,EAAA,iBAAA,EAAmB,OAAO,cAAe,EAAA;AAAA,IAC/D,EAAE,IAAM,EAAA,MAAA,EAAQ,IAAM,EAAA,qBAAA,EAAuB,OAAO,iBAAkB,EAAA;AAAA,IACtE,EAAE,IAAM,EAAA,MAAA,EAAQ,IAAM,EAAA,uBAAA,EAAyB,OAAO,mBAAoB,EAAA;AAAA,IAC1E,EAAE,IAAM,EAAA,MAAA,EAAQ,IAAM,EAAA,yBAAA,EAA2B,OAAO,qBAAsB,EAAA;AAAA,IAC9E,EAAE,IAAM,EAAA,MAAA,EAAQ,IAAM,EAAA,uBAAA,EAAyB,OAAO,eAAgB,EAAA;AAAA,IACtE,EAAE,IAAM,EAAA,MAAA,EAAQ,IAAM,EAAA,SAAA,EAAW,OAAO,QAAS,EAAA;AAAA,IACjD,EAAE,IAAM,EAAA,MAAA,EAAQ,IAAM,EAAA,cAAA,EAAgB,OAAO,aAAc,EAAA;AAAA,IAC3D,EAAE,IAAM,EAAA,MAAA,EAAQ,IAAM,EAAA,OAAA,EAAS,OAAO,QAAS,EAAA;AAAA,IAC/C,EAAE,IAAM,EAAA,MAAA,EAAQ,IAAM,EAAA,cAAA,EAAgB,OAAO,mBAAoB,EAAA;AAAA,IACjE,EAAE,IAAM,EAAA,MAAA,EAAQ,IAAM,EAAA,YAAA,EAAc,OAAO,kBAAmB,EAAA;AAAA,IAC9D,EAAE,IAAM,EAAA,MAAA,EAAQ,IAAM,EAAA,UAAA,EAAY,OAAO,aAAc,EAAA;AAAA,IACvD,EAAE,IAAM,EAAA,MAAA,EAAQ,IAAM,EAAA,gBAAA,EAAkB,OAAO,eAAgB,EAAA;AAAA,IAC/D,EAAE,IAAM,EAAA,MAAA,EAAQ,IAAM,EAAA,SAAA,EAAW,OAAO,QAAS,EAAA;AAAA,IACjD,EAAE,IAAM,EAAA,MAAA,EAAQ,IAAM,EAAA,kBAAA,EAAoB,OAAO,gBAAiB,EAAA;AAAA,IAClE,EAAE,IAAM,EAAA,MAAA,EAAQ,IAAM,EAAA,QAAA,EAAU,OAAO,SAAU,EAAA;AAAA,IACjD,GAAI,gBAAgB,MAChB,GAAA;AAAA,MACE,EAAE,MAAM,WAAY,EAAA;AAAA,MACpB,GAAG,eAAA;AAAA,MACH,EAAE,MAAM,WAAY;AAAA,QACtB,EAAC;AAAA,IACL;AAAA,MACE,IAAM,EAAA,MAAA;AAAA,MACN,IAAM,EAAA,cAAA;AAAA,MACN,UAAY,EAAA,aAAA;AAAA,MACZ,KAAO,EAAA;AAAA;AACT,GACF;AACF,CAAC,CAAA,CAEA,KAAK,CAAC","file":"index.js","sourcesContent":["import type {\n ImportFileHandle,\n InferHrefType,\n InferOutputsType,\n PColumn,\n PColumnValues,\n PObjectId,\n PlDataTableStateV2,\n PlDataTableSheet,\n} from '@platforma-sdk/model';\nimport {\n BlockModel,\n createPlDataTableStateV2,\n createPlDataTableV2,\n} from '@platforma-sdk/model';\nimport { z } from 'zod';\n\nexport const ImportFileHandleSchema = z\n .string()\n .optional()\n .refine<ImportFileHandle | undefined>(\n ((_a) => true) as (arg: string | undefined) => arg is ImportFileHandle | undefined,\n );\n\nexport function* range(from: number, to: number, step = 1) {\n for (let i = from; i < to; i += step) {\n yield i;\n }\n}\n\nexport function toList<T>(iterable: Iterable<T>): T[] {\n const lst: T[] = [];\n for (const it of iterable) {\n lst.push(it);\n }\n\n return lst;\n}\n\nexport function times<R>(n: number, cb: (i: number) => R): R[] {\n return toList(range(0, n)).map(cb);\n}\n\nexport const $BlockArgs = z.object({\n numbers: z.array(z.coerce.number()),\n handles: z.array(ImportFileHandleSchema),\n});\n\nexport type BlockArgs = z.infer<typeof $BlockArgs>;\n\nexport type UiState = {\n dataTableV2: {\n sourceId?: string;\n numRows: number;\n state: PlDataTableStateV2;\n };\n dynamicSections: {\n id: string;\n label: string;\n }[];\n datasets: {\n id: string;\n label: string;\n }[];\n};\n\nexport const platforma = BlockModel.create('Heavy')\n\n .withArgs<BlockArgs>({ numbers: [1, 2, 3, 4], handles: [] })\n\n .withUiState<UiState>({\n dataTableV2: {\n sourceId: 'source_1',\n numRows: 200,\n state: createPlDataTableStateV2(),\n },\n dynamicSections: [],\n datasets: [],\n })\n\n .argsValid((ctx) => {\n if (ctx.args.numbers.length === 5) {\n throw new Error('argsValid: test error');\n }\n\n return ctx.args.numbers.length > 0;\n })\n\n .output('numbers', (ctx) => ctx.outputs?.resolve('numbers')?.getDataAsJson<number[]>())\n\n .output('progresses', (ctx) => {\n const m = ctx.outputs?.resolve('progresses');\n const progresses = m?.mapFields((name, val) => [name, val?.getImportProgress()] as const);\n return Object.fromEntries(progresses ?? []);\n })\n\n .output('ptV2Sheets', (ctx) => {\n const rowCount = ctx.uiState.dataTableV2.numRows ?? 0;\n const sheets = [\n {\n axis: {\n type: 'Int',\n name: 'part',\n annotations: {\n 'pl7.app/label': 'Partitioned axis',\n 'pl7.app/discreteValues': '[0,1]',\n },\n },\n options: [\n { value: 0, label: 'Partition 1' },\n { value: 1, label: 'Partition 2' },\n ],\n } satisfies PlDataTableSheet,\n ];\n return rowCount > 0 ? sheets : [];\n })\n\n .output('ptV2', (ctx) => {\n const rowCount = ctx.uiState.dataTableV2.numRows ?? 0;\n const makePartitionId = (rowCount: number, i: number) => Math.floor((2 * i) / (rowCount + 1));\n const columns: PColumn<PColumnValues>[] = [\n {\n id: 'column1' as PObjectId,\n spec: {\n kind: 'PColumn',\n valueType: 'String',\n name: 'example',\n annotations: {\n 'pl7.app/label': 'String column',\n 'pl7.app/discreteValues': '[\"up\",\"down\"]',\n 'pl7.app/table/orderPriority': '101',\n },\n axesSpec: [\n {\n type: 'Int',\n name: 'part',\n annotations: {\n 'pl7.app/label': 'Partitioned axis',\n 'pl7.app/discreteValues': '[0,1]',\n },\n },\n {\n type: 'Int',\n name: 'index',\n annotations: {\n 'pl7.app/label': 'Int axis',\n },\n },\n ],\n },\n data: times(rowCount, (i) => {\n const v = i + 1;\n return {\n key: [makePartitionId(rowCount, v), v],\n val: v.toString(),\n };\n }),\n },\n {\n id: 'column2' as PObjectId,\n spec: {\n kind: 'PColumn',\n valueType: 'Float',\n name: 'value',\n annotations: {\n 'pl7.app/label': 'Float column',\n 'pl7.app/table/visibility': 'optional',\n 'pl7.app/table/orderPriority': '100',\n },\n axesSpec: [\n {\n type: 'Int',\n name: 'part',\n annotations: {\n 'pl7.app/label': 'Partitioned axis',\n 'pl7.app/discreteValues': '[0,1]',\n },\n },\n {\n type: 'Int',\n name: 'index',\n annotations: {\n 'pl7.app/label': 'Int axis',\n },\n },\n ],\n },\n data: times(rowCount, (i) => {\n const v = i + 1;\n return {\n key: [makePartitionId(rowCount, v), v],\n val: v + 0.1,\n };\n }),\n },\n {\n id: 'labelColumn' as PObjectId,\n spec: {\n kind: 'PColumn',\n valueType: 'Int',\n name: 'pl7.app/label',\n annotations: {\n 'pl7.app/label': 'Int axis labels',\n },\n axesSpec: [\n {\n type: 'Int',\n name: 'index',\n annotations: {\n 'pl7.app/label': 'Int axis',\n },\n },\n ],\n },\n data: times(rowCount, (i) => {\n const v = i + 1;\n return {\n key: [v],\n val: 100000 - v,\n };\n }),\n },\n {\n id: 'linkerColumn' as PObjectId,\n spec: {\n kind: 'PColumn',\n valueType: 'Int',\n name: 'linker',\n annotations: {\n 'pl7.app/label': 'Index axis linker',\n 'pl7.app/isLinkerColumn': 'true',\n 'pl7.app/table/visibility': 'hidden',\n },\n axesSpec: [\n {\n type: 'Int',\n name: 'index',\n annotations: {\n 'pl7.app/label': 'Int axis',\n },\n },\n {\n type: 'Int',\n name: 'linkedIndex',\n annotations: {\n 'pl7.app/label': 'Linked int axis',\n },\n },\n ],\n },\n data: times(rowCount, (i) => {\n const v = i + 1;\n return {\n key: [v, v],\n val: 1,\n };\n }),\n },\n ];\n for (let j = 1; j < 10; ++j) {\n columns.push({\n id: `alphabeticalColumn${j}` as PObjectId,\n spec: {\n kind: 'PColumn',\n valueType: 'String',\n name: 'value',\n annotations: {\n 'pl7.app/label': `Alphabetical column ${j}`,\n 'pl7.app/table/visibility': 'optional',\n 'pl7.app/table/orderPriority': (10 - j).toString(),\n },\n axesSpec: [\n {\n type: 'Int',\n name: 'linkedIndex',\n annotations: {\n 'pl7.app/label': 'Linked int axis',\n },\n },\n ],\n },\n data: times(rowCount, (i) => {\n const v = i + 1;\n return {\n key: [v],\n val: v.toString().repeat(j),\n };\n }),\n });\n }\n return createPlDataTableV2(\n ctx,\n columns,\n ctx.uiState.dataTableV2.state,\n );\n })\n\n .title((ctx) => {\n if (ctx.args.numbers.length === 5) {\n throw new Error('block title: test error');\n }\n\n return 'Ui Examples';\n })\n\n .sections((ctx) => {\n const dynamicSections = (ctx.uiState.dynamicSections ?? []).map((it) => ({\n type: 'link' as const,\n href: `/section?id=${it.id}` as const,\n label: it.label,\n }));\n\n if (dynamicSections.some((it) => it.label === 'Error')) {\n throw new Error('sections: test error');\n }\n\n return [\n { type: 'link', href: '/loaders', label: 'Loaders' },\n { type: 'link', href: '/', label: 'Icons/Masks' },\n { type: 'link', href: '/state', label: 'State' },\n { type: 'link', href: '/layout', label: 'Layout' },\n { type: 'link', href: '/form-components', label: 'Form Components' },\n { type: 'link', href: '/log-view', label: 'PlLogView' },\n { type: 'link', href: '/modals', label: 'Modals' },\n { type: 'link', href: '/select-files', label: 'Select Files' },\n { type: 'link', href: '/inject-env', label: 'Inject env' },\n { type: 'link', href: '/use-watch-fetch', label: 'useWatchFetch' },\n { type: 'link', href: '/typography', label: 'Typography' },\n { type: 'link', href: '/ag-grid-vue', label: 'AgGridVue' },\n { type: 'link', href: '/ag-grid-vue-with-builder', label: 'AgGridVue with builder' },\n { type: 'link', href: '/pl-ag-data-table-v2', label: 'PlAgDataTableV2' },\n { type: 'link', href: '/pl-splash-page', label: 'PlSplashPage' },\n { type: 'link', href: '/pl-file-input-page', label: 'PlFileInputPage' },\n { type: 'link', href: '/pl-number-field-page', label: 'PlNumberFieldPage' },\n { type: 'link', href: '/pl-error-boundary-page', label: 'PlErrorBoundaryPage' },\n { type: 'link', href: '/pl-element-list-page', label: 'PlElementList' },\n { type: 'link', href: '/errors', label: 'Errors' },\n { type: 'link', href: '/text-fields', label: 'PlTextField' },\n { type: 'link', href: '/tabs', label: 'PlTabs' },\n { type: 'link', href: '/stacked-bar', label: 'PlChartStackedBar' },\n { type: 'link', href: '/histogram', label: 'PlChartHistogram' },\n { type: 'link', href: '/buttons', label: 'ButtonsPage' },\n { type: 'link', href: '/notifications', label: 'Notifications' },\n { type: 'link', href: '/drafts', label: 'Drafts' },\n { type: 'link', href: '/pl-autocomplete', label: 'PlAutocomplete' },\n { type: 'link', href: '/radio', label: 'PlRadio' },\n ...(dynamicSections.length\n ? [\n { type: 'delimiter' },\n ...dynamicSections,\n { type: 'delimiter' }] as const\n : []),\n {\n type: 'link',\n href: '/add-section',\n appearance: 'add-section',\n label: 'New Dynamic section',\n },\n ];\n })\n\n .done(2); // api version 2\n\nexport type BlockOutputs = InferOutputsType<typeof platforma>;\nexport type Href = InferHrefType<typeof platforma>;\n"]}
1
+ {"version":3,"sources":["../src/index.ts"],"names":["rowCount"],"mappings":"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","file":"index.js","sourcesContent":["import type {\n ImportFileHandle,\n InferHrefType,\n InferOutputsType,\n PColumn,\n PColumnValues,\n PObjectId,\n PlDataTableStateV2,\n PlDataTableSheet,\n} from '@platforma-sdk/model';\nimport {\n Annotation,\n BlockModel,\n createPlDataTableStateV2,\n createPlDataTableV2,\n PColumnName,\n stringifyJson,\n ValueType,\n} from '@platforma-sdk/model';\nimport { z } from 'zod';\n\nexport const ImportFileHandleSchema = z\n .string()\n .optional()\n .refine<ImportFileHandle | undefined>(\n ((_a) => true) as (arg: string | undefined) => arg is ImportFileHandle | undefined,\n );\n\nexport function* range(from: number, to: number, step = 1) {\n for (let i = from; i < to; i += step) {\n yield i;\n }\n}\n\nexport function toList<T>(iterable: Iterable<T>): T[] {\n const lst: T[] = [];\n for (const it of iterable) {\n lst.push(it);\n }\n\n return lst;\n}\n\nexport function times<R>(n: number, cb: (i: number) => R): R[] {\n return toList(range(0, n)).map(cb);\n}\n\nexport const $BlockArgs = z.object({\n numbers: z.array(z.coerce.number()),\n handles: z.array(ImportFileHandleSchema),\n});\n\nexport type BlockArgs = z.infer<typeof $BlockArgs>;\n\nexport type UiState = {\n dataTableV2: {\n sourceId?: string;\n numRows: number;\n state: PlDataTableStateV2;\n };\n dynamicSections: {\n id: string;\n label: string;\n }[];\n datasets: {\n id: string;\n label: string;\n }[];\n};\n\nexport const platforma = BlockModel.create('Heavy')\n\n .withArgs<BlockArgs>({ numbers: [1, 2, 3, 4], handles: [] })\n\n .withUiState<UiState>({\n dataTableV2: {\n sourceId: 'source_1',\n numRows: 200,\n state: createPlDataTableStateV2(),\n },\n dynamicSections: [],\n datasets: [],\n })\n\n .argsValid((ctx) => {\n if (ctx.args.numbers.length === 5) {\n throw new Error('argsValid: test error');\n }\n\n return ctx.args.numbers.length > 0;\n })\n\n .output('numbers', (ctx) => ctx.outputs?.resolve('numbers')?.getDataAsJson<number[]>())\n\n .output('progresses', (ctx) => {\n const m = ctx.outputs?.resolve('progresses');\n const progresses = m?.mapFields((name, val) => [name, val?.getImportProgress()] as const);\n return Object.fromEntries(progresses ?? []);\n })\n\n .output('ptV2Sheets', (ctx) => {\n const rowCount = ctx.uiState.dataTableV2.numRows ?? 0;\n const sheets = [\n {\n axis: {\n type: ValueType.Int,\n name: 'part',\n annotations: {\n [Annotation.Label]: 'Partitioned axis',\n [Annotation.DiscreteValues]: stringifyJson([0, 1]),\n } satisfies Annotation,\n },\n options: [\n { value: 0, label: 'Partition 1' },\n { value: 1, label: 'Partition 2' },\n ],\n } satisfies PlDataTableSheet,\n ];\n return rowCount > 0 ? sheets : [];\n })\n\n .output('ptV2', (ctx) => {\n const rowCount = ctx.uiState.dataTableV2.numRows ?? 0;\n const makePartitionId = (rowCount: number, i: number) => Math.floor((2 * i) / (rowCount + 1));\n const columns: PColumn<PColumnValues>[] = [\n {\n id: 'column1' as PObjectId,\n spec: {\n kind: 'PColumn',\n valueType: ValueType.String,\n name: 'example',\n annotations: {\n [Annotation.Label]: 'String column',\n [Annotation.DiscreteValues]: stringifyJson(['up', 'down']),\n [Annotation.Table.OrderPriority]: stringifyJson(101),\n } satisfies Annotation,\n axesSpec: [\n {\n type: ValueType.Int,\n name: 'part',\n annotations: {\n [Annotation.Label]: 'Partitioned axis',\n [Annotation.DiscreteValues]: stringifyJson([0, 1]),\n } satisfies Annotation,\n },\n {\n type: ValueType.Int,\n name: 'index',\n annotations: {\n [Annotation.Label]: 'Int axis',\n } satisfies Annotation,\n },\n ],\n },\n data: times(rowCount, (i) => {\n const v = i + 1;\n return {\n key: [makePartitionId(rowCount, v), v],\n val: v.toString(),\n };\n }),\n },\n {\n id: 'column2' as PObjectId,\n spec: {\n kind: 'PColumn',\n valueType: ValueType.Float,\n name: 'value',\n annotations: {\n [Annotation.Label]: 'Float column',\n [Annotation.Table.Visibility]: 'optional',\n [Annotation.Table.OrderPriority]: stringifyJson(100),\n } satisfies Annotation,\n axesSpec: [\n {\n type: ValueType.Int,\n name: 'part',\n annotations: {\n [Annotation.Label]: 'Partitioned axis',\n [Annotation.DiscreteValues]: stringifyJson([0, 1]),\n } satisfies Annotation,\n },\n {\n type: ValueType.Int,\n name: 'index',\n annotations: {\n [Annotation.Label]: 'Int axis',\n } satisfies Annotation,\n },\n ],\n },\n data: times(rowCount, (i) => {\n const v = i + 1;\n return {\n key: [makePartitionId(rowCount, v), v],\n val: v + 0.1,\n };\n }),\n },\n {\n id: 'labelColumn' as PObjectId,\n spec: {\n kind: 'PColumn',\n valueType: ValueType.Int,\n name: PColumnName.Label,\n annotations: {\n [Annotation.Label]: 'Int axis labels',\n } satisfies Annotation,\n axesSpec: [\n {\n type: ValueType.Int,\n name: 'index',\n annotations: {\n [Annotation.Label]: 'Int axis',\n } satisfies Annotation,\n },\n ],\n },\n data: times(rowCount, (i) => {\n const v = i + 1;\n return {\n key: [v],\n val: 100000 - v,\n };\n }),\n },\n {\n id: 'linkerColumn' as PObjectId,\n spec: {\n kind: 'PColumn',\n valueType: ValueType.Int,\n name: 'linker',\n annotations: {\n [Annotation.Label]: 'Index axis linker',\n [Annotation.IsLinkerColumn]: stringifyJson(true),\n [Annotation.Table.Visibility]: 'hidden',\n } satisfies Annotation,\n axesSpec: [\n {\n type: ValueType.Int,\n name: 'index',\n annotations: {\n [Annotation.Label]: 'Int axis',\n } satisfies Annotation,\n },\n {\n type: ValueType.Int,\n name: 'linkedIndex',\n annotations: {\n [Annotation.Label]: 'Linked int axis',\n } satisfies Annotation,\n },\n ],\n },\n data: times(rowCount, (i) => {\n const v = i + 1;\n return {\n key: [v, v],\n val: 1,\n };\n }),\n },\n ];\n for (let j = 1; j < 10; ++j) {\n columns.push({\n id: `alphabeticalColumn${j}` as PObjectId,\n spec: {\n kind: 'PColumn',\n valueType: ValueType.String,\n name: 'value',\n annotations: {\n [Annotation.Label]: `Alphabetical column ${j}`,\n [Annotation.Table.Visibility]: 'optional',\n [Annotation.Table.OrderPriority]: stringifyJson(10 - j),\n } satisfies Annotation,\n axesSpec: [\n {\n type: ValueType.Int,\n name: 'linkedIndex',\n annotations: {\n [Annotation.Label]: 'Linked int axis',\n } satisfies Annotation,\n },\n ],\n },\n data: times(rowCount, (i) => {\n const v = i + 1;\n return {\n key: [v],\n val: v.toString().repeat(j),\n };\n }),\n });\n }\n return createPlDataTableV2(\n ctx,\n columns,\n ctx.uiState.dataTableV2.state,\n );\n })\n\n .title((ctx) => {\n if (ctx.args.numbers.length === 5) {\n throw new Error('block title: test error');\n }\n\n return 'Ui Examples';\n })\n\n .sections((ctx) => {\n const dynamicSections = (ctx.uiState.dynamicSections ?? []).map((it) => ({\n type: 'link' as const,\n href: `/section?id=${it.id}` as const,\n label: it.label,\n }));\n\n if (dynamicSections.some((it) => it.label === 'Error')) {\n throw new Error('sections: test error');\n }\n\n return [\n { type: 'link', href: '/loaders', label: 'Loaders' },\n { type: 'link', href: '/', label: 'Icons/Masks' },\n { type: 'link', href: '/state', label: 'State' },\n { type: 'link', href: '/layout', label: 'Layout' },\n { type: 'link', href: '/form-components', label: 'Form Components' },\n { type: 'link', href: '/log-view', label: 'PlLogView' },\n { type: 'link', href: '/modals', label: 'Modals' },\n { type: 'link', href: '/select-files', label: 'Select Files' },\n { type: 'link', href: '/inject-env', label: 'Inject env' },\n { type: 'link', href: '/use-watch-fetch', label: 'useWatchFetch' },\n { type: 'link', href: '/typography', label: 'Typography' },\n { type: 'link', href: '/ag-grid-vue', label: 'AgGridVue' },\n { type: 'link', href: '/ag-grid-vue-with-builder', label: 'AgGridVue with builder' },\n { type: 'link', href: '/pl-ag-data-table-v2', label: 'PlAgDataTableV2' },\n { type: 'link', href: '/pl-splash-page', label: 'PlSplashPage' },\n { type: 'link', href: '/pl-file-input-page', label: 'PlFileInputPage' },\n { type: 'link', href: '/pl-number-field-page', label: 'PlNumberFieldPage' },\n { type: 'link', href: '/pl-error-boundary-page', label: 'PlErrorBoundaryPage' },\n { type: 'link', href: '/pl-element-list-page', label: 'PlElementList' },\n { type: 'link', href: '/errors', label: 'Errors' },\n { type: 'link', href: '/text-fields', label: 'PlTextField' },\n { type: 'link', href: '/tabs', label: 'PlTabs' },\n { type: 'link', href: '/stacked-bar', label: 'PlChartStackedBar' },\n { type: 'link', href: '/histogram', label: 'PlChartHistogram' },\n { type: 'link', href: '/buttons', label: 'ButtonsPage' },\n { type: 'link', href: '/notifications', label: 'Notifications' },\n { type: 'link', href: '/drafts', label: 'Drafts' },\n { type: 'link', href: '/pl-autocomplete', label: 'PlAutocomplete' },\n { type: 'link', href: '/radio', label: 'PlRadio' },\n ...(dynamicSections.length\n ? [\n { type: 'delimiter' },\n ...dynamicSections,\n { type: 'delimiter' }] as const\n : []),\n {\n type: 'link',\n href: '/add-section',\n appearance: 'add-section',\n label: 'New Dynamic section',\n },\n ];\n })\n\n .done(2); // api version 2\n\nexport type BlockOutputs = InferOutputsType<typeof platforma>;\nexport type Href = InferHrefType<typeof platforma>;\n"]}